Welcome to the Python Starters documentation! Python Starters is a tool designed to streamline the process of initializing, managing, and updating project starters based on cookiecutter templates. This tool simplifies Git operations, specifically working with subtrees and submodules, and provides a user-friendly interface for project scaffolding.
To install Python Starters via pip from PyPI, run the following command:
pip install python-starters
This will install Python Starters
Ensure you have Git installed on your system, as Python Starters relies on Git for version control of starters.
To quickly start using Python Starters, follow these steps:
- Initialize your project:
python-starters init
- Add a starter to your project:
python-starters add <starter_git_url>
- Customize your starter as needed and enjoy streamlined project setup!
Python Starters simplifies the process of working with project starters. Below are the basic commands:
-
Initializing Python Starters:
python-starters init
-
Adding a Starter:
python-starters add <starter_git_url>
-
Updating a Starter:
python-starters update <starter_name>
-
Removing a Starter:
python-starters remove <starter_name>
For advanced usage of Python Starters, consider the following commands:
-
Resolving Merge Conflicts:
python-starters resolve <starter_name>
-
Listing All Starters:
python-starters list
-
Customizing Starters:
Customize your starter by editing the generated configuration files. Python Starters will respect these customizations during updates.
Please see the Command-line Reference for details.
Python Starters also provides an API for programmatic access to its functionalities. Below is the reference for the API:
-
initialize_project()
: Initializes Python Starters in the current project. -
add_new_starter(starter_git_url: str)
: Adds a new starter to the project from the given Git URL. -
update_existing_starter(starter_name: str)
: Updates the specified starter to its latest version. -
remove_starter(starter_name: str)
: Removes the specified starter from the project. -
resolve_starter_conflicts(starter_name: str)
: Assists in resolving merge conflicts for the specified starter. -
list_all_starters()
: Lists all starters added to the current project.
Each function is designed to be intuitive and easy to use, mirroring the simplicity of the CLI commands.
- Python >=3.11
Contributions are very welcome. To learn more, see the Contributor Guide.
Distributed under the terms of the MIT license, Python Starters is free and open source software.
If you encounter any problems, please file an issue along with a detailed description.
This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.