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.
- 🚀 Zero dependencies — built only with Python stdlib
- ⚙️ Virtual environment auto-created (
.venv) - 📦 requirements.txt scaffolded (empty but ready)
- 📝 Entry file (
main.pyorrun.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/ci.yml) - 🔧 Idempotent: runs safely again without overwriting unless
--force
cd MyProject
py -m reposmith.main init --entry run.py --with-vscode --with-cireposmith init --entry run.py --with-vscode --with-ciBoth commands will:
- create
.venv/ - add
requirements.txt,run.py,.gitignore,LICENSE,.vscode/ - configure everything automatically with defaults
Basic:
reposmith init --entry main.pyWith extras:
reposmith init --entry run.py --with-ci --with-gitignore --with-license --with-vscode --author "YourName"Flags:
--force→ overwrite existing files (with.bakbackup)--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)
py -m pip install --upgrade reposmith-tolIf PATH not configured, use:
py -m reposmith.main init --entry run.pyRun tests:
python -m unittest discover -s tests -v🔗 Follow the project progress on GitHub Projects
This project is licensed under the MIT License.
© 2025 TamerOnLine
- 🐛 Report Issues: GitHub Issues
- 💡 Feature Requests: GitHub Issues (اختر نوع Feature Request)
- 💖 Sponsor: GitHub Sponsors
- 📧 Contact: (info@tameronline.com)