Public Python Package Template
Using This Template for Your Own Package (e.g., "my_package")
To adapt this template for your new package (let's call it "my_package"):
-
Copy or Template the Repository:
- Click the "Use this template" button on GitHub to create a new repository from this template.
-
Rename the Package Directory:
- Rename the main package directory in src dir
-
Update
pyproject.toml:[project].name: Change from"public_package_template"to"my_package".[project].urls: UpdateHomepageandRepositoryURLs to point to your new repository.
-
Set up bump version:
- Install and authenticate GitHub CLI:
# Install GitHub CLI (if not already installed) # macOS: brew install gh # Linux: See https://cli.github.com/ # Authenticate gh auth login
- Create a Personal Access Token:
- Go to: https://github.com/settings/personal-access-tokens/new?type=beta
- Set permission "Contents" to Read & Write
- Copy the generated token
- Add the token to repository secrets:
gh secret set BUMPVERSION_TOKEN --body "your_generated_token_here"
- It is recommended to make the main branch protected as every push/merge/commit to it will trigger a bump version.
- Install and authenticate GitHub CLI:
-
Set up PyPI
- Create PyPI API token:
- Go to: https://pypi.org/manage/account/token/
- Click "Add API token", set the scope for your package
- Copy the generated token (starts with
pypi-)
- Add the token to repository secrets:
gh secret set PYPI_PUBLISH_TOKEN --body "pypi-your_token_here"
- Create PyPI API token:
-
Verify secrets setup:
# List all repository secrets gh secret list # Check authentication status gh auth status
-
Once you push anything to main, a new tag will be created, built, and published to PyPI
Managing Repository Secrets via CLI
Additional useful commands:
# Set multiple secrets from .env file
gh secret set -f .env
# Delete a secret
gh secret delete SECRET_NAME
# Set organization-level secret
gh secret set SECRET_NAME --org your-org
# Open repository settings in browser
gh browse --settings
Installing Your Published Public Package
Then you can just pip install your package.
Release files for yid-public-package-template 0.1.15
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| yid_public_package_template-0.1.15.tar.gz | 3.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| yid_public_package_template-0.1.15-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.5 kB
Release files / yid_public_package_template-0.1.15.tar.gz
| Download URL | yid_public_package_template-0.1.15.tar.gz |
|---|---|
| Size | 3.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
49ae8c466951fd4b0102f3625d90f6c0530d8eff750c10ebde2a6c7c299bac80
|
|
BLAKE2b-256 checksum How to use checksums |
46ad7930bf057ca01735557e07c03b84b5bd0483381aa461d16284e6176fdb64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.12
|
Release files / yid_public_package_template-0.1.15-py3-none-any.whl
| Download URL | yid_public_package_template-0.1.15-py3-none-any.whl |
|---|---|
| Size | 3.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2a336b48ede4bb2e6ed90c3432fcaf6f147f77970dc4b749da9e6a323a37f811
|
|
BLAKE2b-256 checksum How to use checksums |
912d451d9aeabe3e5ce198898905b0c4f412c876cd8ee9862fa60ae976d564a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.12
|