Skip to main content

Simple Python project bootstrapper with virtualenv and pip automation.

Project description

Bootstrapper

Bootstrapper 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 .venv virtual environment inside that directory.
  • Installs all dependencies listed in requirements.txt.
  • Ensures idempotency: if .venv already exists, it won’t overwrite it.
  • Can be wired up with pyproject.toml to install as a global command.

🚀 Usage

Clone or download this repo, then run:

cd bootstrapper
python3 -m bootstrapper.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 bootstrapper.core in other Python scripts without invoking the CLI.


📦 Packaging (optional)

To install bootstrapper as a system-wide command:

  1. Add this to your pyproject.toml:

    [project]
    name = "bootstrapper"
    version = "0.1.0"
    dependencies = []
    
    [project.scripts]
    bootstrapper = "bootstrapper.cli:main"
    
  2. Install in editable mode:

    pip install -e .
    
  3. Now you can run:

    bootstrapper ~/Projects/myapp
    

📄 License

This project is distributed under a custom license.
Use freely, hack ruthlessly, share improvements — but ownership remains with the author.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sprouter-0.1.2.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sprouter-0.1.2-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file sprouter-0.1.2.tar.gz.

File metadata

  • Download URL: sprouter-0.1.2.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for sprouter-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6ba0c4e5596416863857765daa3d60a294c162be60fc1bddeefff4b377fe48e4
MD5 2cc49cf53610660fffc6aaf41b448d48
BLAKE2b-256 7f2b38350b5531c42dbad98a4c93528e9840c578fff277f881c3f08957459f91

See more details on using hashes here.

File details

Details for the file sprouter-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: sprouter-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for sprouter-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 067ebe39f139a4cd9ea59a9c180c0f7dfcf5ca74c7c7153c8fb7c8352cb03ca5
MD5 f15fb04f2b296768ab9c8381951dbc39
BLAKE2b-256 ad703467e83d7d0b70bbb3368f79e4c6925c41ded60a9eb955fef7c6d695fa76

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page