Skip to main content

Portable project bootstrapper (venv, gitignore, license, vscode, etc.)

Project description

⚡ RepoSmith

PyPI version Python License CI Sponsor

RepoSmith is a portable Python project bootstrapper — a zero-dependency CLI & library that helps you spin up new projects instantly.
With one command, you get a ready-to-code environment: virtualenv, config files, VS Code setup, .gitignore, LICENSE, and optional CI.


✨ Features

  • 🚀 Zero dependencies — built only with Python stdlib
  • ⚙️ Virtual environment auto-created (.venv)
  • 📦 requirements.txt scaffolded (empty but ready)
  • 📝 Entry file (main.py or run.py) with a welcome message
  • 🛡 LICENSE (MIT by default, more soon)
  • 🙈 .gitignore presets (Python, Node, Django…)
  • 💻 VS Code config (settings.json, launch.json, workspace)
  • 🔄 GitHub Actions workflow (.github/workflows/test-main.yml)
  • 🔧 Idempotent: runs safely again without overwriting unless --force

⚡ Quick Start

Option 1 — run via Python module (always works)

cd MyProject
py -m reposmith.main init --entry run.py --with-vscode --with-ci

Option 2 — run via CLI (if Scripts folder is on PATH)

reposmith init --entry run.py --with-vscode --with-ci

Both commands will:

  • create .venv/
  • add requirements.txt, run.py, .gitignore, LICENSE, .vscode/
  • configure everything automatically with defaults

🚀 Usage

Basic:

reposmith init --entry main.py

With extras:

reposmith init --entry run.py --with-ci --with-gitignore --with-license --with-vscode --author "YourName"

Flags:

  • --force → overwrite existing files (with .bak backup)
  • --no-venv → skip creating .venv
  • --with-license → add LICENSE (MIT)
  • --with-gitignore → add .gitignore (Python preset by default)
  • --with-vscode → add VS Code config
  • --with-ci → add GitHub Actions workflow
  • --author / --year → customize LICENSE metadata
  • --ci-python → set Python version for CI (default: 3.12)

📦 Installation

py -m pip install --upgrade reposmith-tol

If PATH not configured, use:

py -m reposmith.main init --entry run.py

🧪 Development

Run tests:

python -m unittest discover -s tests -v

🗺️ Roadmap

🔗 Follow the project progress on GitHub Projects


🛡 License

This project is licensed under the MIT License.
© 2025 TamerOnLine


💬 Support

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

reposmith_tol-0.2.6.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

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

reposmith_tol-0.2.6-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file reposmith_tol-0.2.6.tar.gz.

File metadata

  • Download URL: reposmith_tol-0.2.6.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for reposmith_tol-0.2.6.tar.gz
Algorithm Hash digest
SHA256 cde96bda8808c52bac5f5acdebee1f95b5ad8b4df6e11e67f5fac7ed1df23e2a
MD5 36aa55d8e07a9d313caa94c9505721f4
BLAKE2b-256 4267ced5b662c442ad3a7c2271c18703f1890c533a6a5607d9a4b3450fc76342

See more details on using hashes here.

File details

Details for the file reposmith_tol-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: reposmith_tol-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for reposmith_tol-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 e28b3d6c7d3092c80b3e50b8f9b4385c964fc15ca7ec20a8a43ab4dc5d3f5d36
MD5 1ac926eaee35625fa133cea4167c6563
BLAKE2b-256 3937f59044e5bf48836b157c5b467c5896420297bbbb9704813cd5befe45ae7e

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