Sprouter
⚡ Sprouter is a simple project setup utility. It creates a Python virtual environment, installs dependencies, and prepares a working directory for development — all from a single CLI entrypoint.
Think of it as a one-shot “project scaffolder” that asks where you want your project to live and does the boring setup for you.
✨ Features
- Prompts for a target directory (or take it as a CLI argument).
- Builds a
.venvvirtual environment inside that directory. - Installs all dependencies listed in
requirements.txt. - Ensures idempotency: if
.venvalready exists, it won’t overwrite it. - Can be wired up with
pyproject.tomlto install as a global command.
🚀 Usage
Clone or download this repo, then run:
cd sprouter
python3 -m sprouter.cli ~/Projects/myapp
You’ll see:
⚡ Creating virtualenv at /home/you/Projects/myapp/.venv
⚡ Installing dependencies from requirements.txt
Activate your environment:
source ~/Projects/myapp/.venv/bin/activate
Windows (PowerShell):
.\Projects\myapp\.venv\Scripts\Activate.ps1
🛠 Development
The code is split into two modules:
core.py→ core logic for environment creation & pip installs.cli.py→ command-line interface, argument parsing, user prompts.
This separation makes it easy to import sprouter.core in other Python scripts without invoking the CLI.
📦 Packaging (optional)
To install sprouter as a system-wide command:
-
Add this to your
pyproject.toml:[project] name = "sprouter" version = "0.1.0" dependencies = [] [project.scripts] bootstrapper = "sprouter.cli:main"
-
Install in editable mode:
pip install -e .
-
Now you can run:
sprouter ~/Projects/myapp
📄 License
This project is distributed under a custom license.
Use freely, hack ruthlessly, share improvements — but ownership remains with the author.
Release files for sprouter 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sprouter-0.1.4.tar.gz | 5.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sprouter-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.9 kB
Release files / sprouter-0.1.4.tar.gz
| Download URL | sprouter-0.1.4.tar.gz |
|---|---|
| Size | 5.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5802f172ee4c08043c54c5b7ee810f0de2058b2e27fce45472e045f8eac84043
|
|
BLAKE2b-256 checksum How to use checksums |
7aca84c08951d370706c1050e4d98a3bdd35b4c45030e61885de1ce72e6a23d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.8
|
Release files / sprouter-0.1.4-py3-none-any.whl
| Download URL | sprouter-0.1.4-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ad554b326a91ee13cfa1e59f4426b76842bde79010c7573643d9812f06e7e6a8
|
|
BLAKE2b-256 checksum How to use checksums |
48c2830b1e5428a0d9129bd504b0b2997ddd9c9f8639d14996eecdc35e376823
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.8
|