A tool to reserve Python package names on PyPI
Project description
Reserve Name
A command-line tool to quickly reserve Python package names on PyPI and Test PyPI.
Installation
pip install reserve-name
Usage
After installation, simply run:
reserve-name
The tool will guide you through:
- Environment Setup: On first run, it will help you set up your API tokens and base directory
- Package Creation: Create a UV-based package structure
- Publishing: Upload to both Test PyPI and PyPI
- GitHub Integration: Optionally create a GitHub repository
Configuration
The tool uses a local .env file to store your configuration. You can either:
- Let the tool create it interactively on first run
- Create it manually using the template below
Environment Variables
Create a .env file in your package installation directory with:
PYPI_API_TOKEN=your_pypi_api_token_here
TEST_PYPI_API_TOKEN=your_test_pypi_api_token_here
BASE_URL=your_base_directory_here
Getting API Tokens
- PyPI Token: Get from https://pypi.org/manage/account/token/
- Test PyPI Token: Get from https://test.pypi.org/manage/account/token/
Requirements
- Python 3.8+
uvpackage managerghCLI tool (optional, for GitHub repository creation)- PyPI and Test PyPI accounts with API tokens
Features
- ✅ Interactive environment setup
- ✅ UV-based package structure
- ✅ Automatic Test PyPI publishing
- ✅ Production PyPI publishing
- ✅ GitHub repository creation
- ✅ Secure token handling
- ✅ Local configuration management
Security
- API tokens are stored in a local
.envfile with secure permissions - Tokens are never logged or displayed in output
- The
.envfile is created with read/write permissions for owner only
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reserve_name-0.1.1.tar.gz.
File metadata
- Download URL: reserve_name-0.1.1.tar.gz
- Upload date:
- Size: 5.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60894e4256070eb7454cf87c05f17fa8a1514338c7c3417b3765f943a742d8bb
|
|
| MD5 |
15040f006bec883dc037a9463572a6b1
|
|
| BLAKE2b-256 |
4862507f8e038c219f4d72620bab5098adf8500f20fbba5068d834745e36e158
|
File details
Details for the file reserve_name-0.1.1-py3-none-any.whl.
File metadata
- Download URL: reserve_name-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69d103074f048a941494f3b274c4e3cf3846e299e173edaf3fe4767a7d38048b
|
|
| MD5 |
cebd884347eab1f098a47b8305e4e437
|
|
| BLAKE2b-256 |
2ad77dce044ec895370034c4f6b4c636bb7a797313cd052f7d68588aa528e376
|