Your FastAPI Payload Shield package is now ready to be published to PyPI.
cd C:\Users\kandu\OneDrive\Desktop\GitHub\FastAPIPS
publish.batchcd ~/Desktop/GitHub/FastAPIPS
chmod +x publish.sh
./publish.shWhen prompted:
- Username: Your PyPI username
- Password: Your PyPI password or API token
The publish script automatically:
- ✅ Checks Python and build tools
- ✅ Cleans old build artifacts
- ✅ Builds distribution packages (wheel + source)
- ✅ Verifies package contents
- ✅ Uploads to PyPI
Name: fastapi_payloadshield
Version: 1.2.0
License: Apache-2.0
Author: Ganesh Kandu
Repository: https://github.com/PayloadShield/FastAPIPS
PyPI: https://pypi.org/project/fastapi_payloadshield/
- Go to https://pypi.org/account/register/
- Create your account
- Verify email
- (Optional) Create API token at https://pypi.org/account/manage
Username: __token__
Password: [Your API token from https://pypi.org/account/manage]
fastapi_payloadshield/
├── fastapi_payloadshield/
│ ├── __init__.py
│ ├── config.py
│ ├── crypto.py
│ ├── decorators.py
│ ├── EncryptionHandler.py
│ ├── Base64EncryptionHandler.py
│ ├── FernetEncryptionHandler.py
│ ├── AESGCM256EncryptionHandler.py
│ └── HybridRSAEncryptionHandler.py
├── examples/
│ ├── example_app.py
│ └── test_client.py
├── README.md
├── LICENSE (Apache-2.0)
├── pyproject.toml
├── setup.py
└── requirements.txt
PLUS all files from document/ folder:
├── document/DEVELOPMENT.md
├── document/PUBLISHING_GUIDE.md
└── document/PROJECT_JOURNEY.md
Before running publish script:
# 1. Verify package structure
ls -la # or dir on Windows
# 2. Test imports
python -c "from fastapi_payloadshield import PayloadShield; print('✅ OK')"
# 3. Check version
python -c "import fastapi_payloadshield; print(f'Version: {fastapi_payloadshield.__version__}')"
# 4. Verify setup.py
python setup.py --version
# 5. Check license
cat LICENSE | head -5Once published, users can install with:
pip install fastapi_payloadshieldOr with optional dev tools:
pip install fastapi_payloadshield[dev]- Total Files: 15+
- Python Modules: 9
- Example Applications: 2
- Documentation Files: 3 (in document/)
- Configuration Files: 5
- Publication Scripts: 2
Solution: Make sure you're in the project root directory
# Correct location:
C:\Users\kandu\OneDrive\Desktop\GitHub\FastAPIPS\Solution: Install Python or add to PATH
# Verify Python is installed:
python --version
# Or:
python3 --versionSolution: Check PyPI credentials
- Username: Correct PyPI username
- Password: Correct password or API token (not your login password!)
- 2FA: Use __token__ as username if 2FA enabled
Solution: Update version number in:
- setup.py (line 12)
- pyproject.toml (line 7)
Then republish with new version.
To publish updates:
- Make code changes
- Update version in:
setup.pypyproject.toml
- Run:
publish.batchor./publish.sh - Confirm new version on PyPI
- GitHub Issues: https://github.com/PayloadShield/FastAPIPS/issues
- PyPI Page: https://pypi.org/project/fastapi_payloadshield/
- Author: Ganesh Kandu kanduganesh@gmail.com
Once published to PyPI:
- ✅ Available for download:
pip install fastapi_payloadshield - ✅ Listed on PyPI: https://pypi.org/project/fastapi_payloadshield/
- ✅ Discoverable via:
pip search(if enabled) - ✅ Accessible from: conda-forge (optional)
- ✅ Linked to: GitHub repository
Happy Publishing! 🚀
Next command:
publish.batch # Windows
./publish.sh # Linux/macOS