1. Create files: __init__.py setup.py README.md LICENSE 2. Check for setuptools and wheel: pip install --user --upgrade setuptools wheel 3. Generate package: py setup.py sdist bdist_wheel 4. Upload to pip: twine upload dist/*