Date: 2026-02-07 Status: ✅ All packages configured for publishing
All 8 packages in the penguin-libs monorepo are now properly configured for automated publishing via GitHub Actions.
| # | Package | Registry | Package Name | Tag Trigger | Workflow Job | Status |
|---|---|---|---|---|---|---|
| 1 | react-libs | GitHub Packages (npm) | @penguintechinc/react-libs | react-libs-v* |
publish-react-libs |
✅ Configured |
| 2 | python-libs | PyPI | penguin-libs | python-libs-v* |
publish-python-libs |
✅ Configured |
| 3 | python-licensing | PyPI | penguin-licensing | python-licensing-v* |
publish-python-licensing |
✅ Configured |
| 4 | python-secrets | PyPI | penguin-sal | python-secrets-v* |
publish-python-secrets |
✅ Configured |
| 5 | python-utils | PyPI | penguin-utils | python-utils-v* |
publish-python-utils |
✅ NEWLY ADDED |
| 6 | go-common | GitHub (go get) | github.com/.../go-common | v* |
validate-go-common |
✅ Configured |
| 7 | go-h3 | GitHub (go get) | github.com/.../go-h3 | v* |
validate-go-common |
✅ Configured |
| 8 | flutter_libs | pub.dev | flutter_libs | flutter-libs-v* |
publish-flutter-libs |
✅ Configured (dry-run) |
Added python-utils tag trigger:
on:
push:
tags:
- 'python-utils-v*' # NEWAdded python-utils to workflow dispatch options:
workflow_dispatch:
inputs:
package:
options:
- python-utils # NEWAdded publish-python-utils job:
- Job name:
publish-python-utils - Trigger:
python-utils-v*tags or workflow dispatch - Working directory:
packages/python-utils - Python version: 3.13
- Registry: PyPI
- Package name:
penguin-utils - Publishing method: OIDC trusted publishing
Updated package table to show all 8 packages with accurate status:
- Removed "(Future)" and "coming soon" labels
- Added all Python packages with proper names
- Added Go and Flutter packages
Added installation instructions for all package types:
- Python packages from PyPI
- Go packages via
go get - Flutter packages via git dependency
Updated publishing section with comprehensive instructions:
- Tag format for all packages
- Manual publishing commands for each package type
- Batch publishing using
v*tags
Updated repository structure to show all packages
Comprehensive publishing guide covering:
- Package publishing matrix
- Automated and manual publishing methods
- Package-specific instructions for each language
- Troubleshooting common issues
- Release checklist
- Best practices
# Example: Publishing python-utils
cd packages/python-utils
# Update version in pyproject.toml
git add pyproject.toml
git commit -m "chore: Bump python-utils to v0.1.1"
git tag python-utils-v0.1.1
git push origin python-utils-v0.1.1# Update all package versions
git tag v1.2.0
git push origin v1.2.0GitHub UI: Actions → Publish Packages → Run workflow → Select package
- Authentication: OIDC trusted publishing
- Permissions:
id-token: write - No secrets required: GitHub Actions authenticates directly with PyPI
- Publishing action:
pypa/gh-action-pypi-publish@release/v1
Packages:
penguin-libs(python-libs)penguin-licensing(python-licensing)penguin-sal(python-secrets)penguin-utils(python-utils) ← NEWLY ADDED
- Authentication:
GITHUB_TOKEN(automatic) - Scope:
@penguintechinc - Registry:
https://npm.pkg.github.com - Permissions:
packages: write
Packages:
@penguintechinc/react-libs
- No publishing required: Consumed via
go getdirectly from repository - Workflow validates: Tests and builds to ensure quality
- Version tags: Use semantic versioning (v1.2.3)
Packages:
github.com/penguintechinc/penguin-libs/packages/go-commongithub.com/penguintechinc/penguin-libs/packages/go-h3
- Status: Dry-run only (not yet published)
- Requires: pub.dev credentials configuration
- Workflow ready: Remove
--dry-runflag when credentials are added
Packages:
flutter_libs
To verify the changes:
# Check workflow configuration
cat .github/workflows/publish.yml | grep python-utils
# Test workflow syntax
gh workflow view publish.yml
# List all tags
git tag -l '*-v*'
# Trigger workflow manually
gh workflow run publish.yml -f package=python-utils-
First publish:
cd packages/python-utils git tag python-utils-v0.1.0 git push origin python-utils-v0.1.0 -
Verify on PyPI: https://pypi.org/project/penguin-utils/
-
Test installation:
pip install penguin-utils
- Configure pub.dev credentials in GitHub Secrets
- Update workflow to use credentials
- Remove
--dry-runflag - Publish first version
- GitHub Actions: https://github.com/penguintechinc/penguin-libs/actions
- Workflow file:
.github/workflows/publish.yml - PyPI packages: https://pypi.org/user/penguintechinc/
- GitHub Packages: https://github.com/orgs/penguintechinc/packages
- Publishing Guide: docs/PUBLISHING.md
- README: README.md
- Workflow: .github/workflows/publish.yml
Status: ✅ All packages ready for publishing Last Updated: 2026-02-07 Updated By: Claude Code