This Python Project Generator is a command-line tool that helps you quickly create Python project structures using predefined templates. It supports multiple project templates including default, API, ETL, and Machine Learning/Analytics projects.
- Python 3.10+
- uv
git clone https://github.com/pedrohgoncalvess/template-generator.git
cd template-generator
uv init
uv pip install .
&&
uv pip install -e .
# Basic usage
npt --name my-project
# Specify a template
npt --name my-api-project --template api
# Specify a custom path
npt --name my-project --path /path/to/projects
default
: Standard Python project structureapi
: API-focused project setupetl
: Extract, Transform, Load project structureml
: Machine Learning and Analytics project template
# Create a new API project
npt --name my-awesome-api --template api
- Basic Python project structure
- Includes README, .gitignore
- Minimal configuration files
- Flask/FastAPI ready structure
- Includes API routing
- Swagger/OpenAPI documentation setup
- Data extraction and transformation setup
- Configuration for various data sources
- Logging and error handling
- Machine Learning project structure
- Jupyter notebook integration
- Data preprocessing scripts
- Model training and evaluation templates
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
# Clone the repository
git clone https://github.com/your-username/project-generator.git
cd project-generator
# Create virtual environment
uv init
# Install development dependencies
uv pip install -e .
# Run tests
pytest tests/
If you encounter any problems, please file an issue on GitHub.