reposmith-tol


Namereposmith-tol JSON
Version 0.2.10 PyPI version JSON
download
home_pageNone
SummaryPortable project bootstrapper (venv, gitignore, license, vscode, etc.)
upload_time2025-09-07 01:37:45
maintainerNone
docs_urlNone
authorTamerOnLine
requires_python>=3.12
licenseNone
keywords bootstrap venv gitignore license vscode scaffold cli
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ⚑ RepoSmith 

[![PyPI version](https://img.shields.io/pypi/v/reposmith-tol?style=flat-square)](https://pypi.org/project/reposmith-tol/)
![Python](https://img.shields.io/pypi/pyversions/reposmith-tol?style=flat-square)
![License](https://img.shields.io/github/license/liebemama/RepoSmith?style=flat-square)
![CI Success](https://img.shields.io/github/actions/workflow/status/liebemama/RepoSmith/ci.yml?branch=main&label=CI%20Success&style=flat-square&logo=github)
![Security Advisories](https://img.shields.io/badge/Advisories-Active-blue?style=flat-square&logo=github)
[![Sponsor](https://img.shields.io/badge/Sponsor-πŸ’–-pink?style=flat-square)](https://github.com/sponsors/liebemama)



**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/ci.yml`)
- πŸ”§ Idempotent: runs safely again without overwriting unless `--force`

---

## ⚑ Quick Start

### Option 1 β€” run via Python module (always works)
```powershell
cd MyProject
py -m reposmith init --entry run.py --with-vscode --with-ci
```

### Option 2 β€” run via CLI (if Scripts folder is on PATH)
```powershell
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

---


> ℹ️ **Note:** For compatibility with older versions, you can still run  
> `py -m reposmith.main ...` but it is recommended to use  
> `py -m reposmith ...` going forward.

## πŸš€ Usage

Basic:
```powershell
reposmith init --entry main.py
```

With extras:
```powershell
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)

---

### Option 3 β€” run via `on` helper (shortcut)

For convenience, RepoSmith also ships with an **`on/` package** in the repo root.  
This lets you launch the tool with a shorter command:

```powershell
cd MyProject
py -m on init
```

---

## πŸ“¦ Installation
```powershell
py -m pip install --upgrade reposmith-tol
```

If PATH not configured, use:
```powershell
py -m reposmith init --entry run.py
```

---

## πŸ§ͺ Development
Run tests:
```powershell
python -m unittest discover -s tests -v
```

---

## πŸ—ΊοΈ Roadmap

- Support additional templates (Django, FastAPI, React)
- Interactive wizard (`reposmith init --interactive`)
- More license options (Apache-2.0, GPL-3.0)
- Release workflow via GitHub Releases

πŸ”— [Follow the project progress on GitHub Projects](https://github.com/orgs/liebemama/projects/2)


---


## πŸ›‘ License
This project is licensed under the [MIT License](https://github.com/liebemama/RepoSmith/blob/main/LICENSE).  
Β© 2025 TamerOnLine

---

## πŸ’¬ Support

- 🐞 **Bug Report:** [Open Bug Report](https://github.com/liebemama/RepoSmith/issues/new?template=bug.yml)  
- πŸ’‘ **Feature Request:** [Suggest a Feature](https://github.com/liebemama/RepoSmith/issues/new?template=feature.yml)  
- βœ… **Task / ToDo:** [Create Task](https://github.com/liebemama/RepoSmith/issues/new?assignees=&labels=task&template=task.yml)  
- πŸ“„ **Blank Issue:** [Open Blank Issue](https://github.com/liebemama/RepoSmith/issues/new)  
- πŸ“‚ **All Issues:** [GitHub Issues](https://github.com/liebemama/RepoSmith/issues)  
- πŸ’¬ **Discussions:** [Join the Conversation](https://github.com/liebemama/RepoSmith/discussions)  
- πŸ’– **Sponsor:** [GitHub Sponsors](https://github.com/sponsors/liebemama)  
- πŸ“§ **Contact:** [info@tameronline.com](mailto:info@tameronline.com)

---



            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "reposmith-tol",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "bootstrap, venv, gitignore, license, vscode, scaffold, cli",
    "author": "TamerOnLine",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/03/71/7c001aea33c535c83701929ea4876db738120ee55cf9edb331023d75295a/reposmith_tol-0.2.10.tar.gz",
    "platform": null,
    "description": "# \u26a1 RepoSmith \r\n\r\n[![PyPI version](https://img.shields.io/pypi/v/reposmith-tol?style=flat-square)](https://pypi.org/project/reposmith-tol/)\r\n![Python](https://img.shields.io/pypi/pyversions/reposmith-tol?style=flat-square)\r\n![License](https://img.shields.io/github/license/liebemama/RepoSmith?style=flat-square)\r\n![CI Success](https://img.shields.io/github/actions/workflow/status/liebemama/RepoSmith/ci.yml?branch=main&label=CI%20Success&style=flat-square&logo=github)\r\n![Security Advisories](https://img.shields.io/badge/Advisories-Active-blue?style=flat-square&logo=github)\r\n[![Sponsor](https://img.shields.io/badge/Sponsor-\ud83d\udc96-pink?style=flat-square)](https://github.com/sponsors/liebemama)\r\n\r\n\r\n\r\n**RepoSmith** is a **portable Python project bootstrapper** \u2014 a zero-dependency CLI & library that helps you spin up new projects instantly.  \r\nWith one command, you get a ready-to-code environment: virtualenv, config files, VS Code setup, `.gitignore`, LICENSE, and optional CI.\r\n\r\n---\r\n\r\n## \u2728 Features\r\n- \ud83d\ude80 **Zero dependencies** \u2014 built only with Python stdlib\r\n- \u2699\ufe0f **Virtual environment** auto-created (`.venv`)\r\n- \ud83d\udce6 **requirements.txt** scaffolded (empty but ready)\r\n- \ud83d\udcdd **Entry file** (`main.py` or `run.py`) with a welcome message\r\n- \ud83d\udee1 **LICENSE** (MIT by default, more soon)\r\n- \ud83d\ude48 **.gitignore** presets (Python, Node, Django\u2026)\r\n- \ud83d\udcbb **VS Code config** (`settings.json`, `launch.json`, workspace)\r\n- \ud83d\udd04 **GitHub Actions** workflow (`.github/workflows/ci.yml`)\r\n- \ud83d\udd27 Idempotent: runs safely again without overwriting unless `--force`\r\n\r\n---\r\n\r\n## \u26a1 Quick Start\r\n\r\n### Option 1 \u2014 run via Python module (always works)\r\n```powershell\r\ncd MyProject\r\npy -m reposmith init --entry run.py --with-vscode --with-ci\r\n```\r\n\r\n### Option 2 \u2014 run via CLI (if Scripts folder is on PATH)\r\n```powershell\r\nreposmith init --entry run.py --with-vscode --with-ci\r\n```\r\n\r\nBoth commands will:\r\n- create `.venv/`\r\n- add `requirements.txt`, `run.py`, `.gitignore`, `LICENSE`, `.vscode/`\r\n- configure everything automatically with defaults\r\n\r\n---\r\n\r\n\r\n> \u2139\ufe0f **Note:** For compatibility with older versions, you can still run  \r\n> `py -m reposmith.main ...` but it is recommended to use  \r\n> `py -m reposmith ...` going forward.\r\n\r\n## \ud83d\ude80 Usage\r\n\r\nBasic:\r\n```powershell\r\nreposmith init --entry main.py\r\n```\r\n\r\nWith extras:\r\n```powershell\r\nreposmith init --entry run.py --with-ci --with-gitignore --with-license --with-vscode --author \"YourName\"\r\n```\r\n\r\nFlags:\r\n- `--force` \u2192 overwrite existing files (with `.bak` backup)\r\n- `--no-venv` \u2192 skip creating `.venv`\r\n- `--with-license` \u2192 add LICENSE (MIT)\r\n- `--with-gitignore` \u2192 add .gitignore (Python preset by default)\r\n- `--with-vscode` \u2192 add VS Code config\r\n- `--with-ci` \u2192 add GitHub Actions workflow\r\n- `--author` / `--year` \u2192 customize LICENSE metadata\r\n- `--ci-python` \u2192 set Python version for CI (default: 3.12)\r\n\r\n---\r\n\r\n### Option 3 \u2014 run via `on` helper (shortcut)\r\n\r\nFor convenience, RepoSmith also ships with an **`on/` package** in the repo root.  \r\nThis lets you launch the tool with a shorter command:\r\n\r\n```powershell\r\ncd MyProject\r\npy -m on init\r\n```\r\n\r\n---\r\n\r\n## \ud83d\udce6 Installation\r\n```powershell\r\npy -m pip install --upgrade reposmith-tol\r\n```\r\n\r\nIf PATH not configured, use:\r\n```powershell\r\npy -m reposmith init --entry run.py\r\n```\r\n\r\n---\r\n\r\n## \ud83e\uddea Development\r\nRun tests:\r\n```powershell\r\npython -m unittest discover -s tests -v\r\n```\r\n\r\n---\r\n\r\n## \ud83d\uddfa\ufe0f Roadmap\r\n\r\n- Support additional templates (Django, FastAPI, React)\r\n- Interactive wizard (`reposmith init --interactive`)\r\n- More license options (Apache-2.0, GPL-3.0)\r\n- Release workflow via GitHub Releases\r\n\r\n\ud83d\udd17 [Follow the project progress on GitHub Projects](https://github.com/orgs/liebemama/projects/2)\r\n\r\n\r\n---\r\n\r\n\r\n## \ud83d\udee1 License\r\nThis project is licensed under the [MIT License](https://github.com/liebemama/RepoSmith/blob/main/LICENSE).  \r\n\u00a9 2025 TamerOnLine\r\n\r\n---\r\n\r\n## \ud83d\udcac Support\r\n\r\n- \ud83d\udc1e **Bug Report:** [Open Bug Report](https://github.com/liebemama/RepoSmith/issues/new?template=bug.yml)  \r\n- \ud83d\udca1 **Feature Request:** [Suggest a Feature](https://github.com/liebemama/RepoSmith/issues/new?template=feature.yml)  \r\n- \u2705 **Task / ToDo:** [Create Task](https://github.com/liebemama/RepoSmith/issues/new?assignees=&labels=task&template=task.yml)  \r\n- \ud83d\udcc4 **Blank Issue:** [Open Blank Issue](https://github.com/liebemama/RepoSmith/issues/new)  \r\n- \ud83d\udcc2 **All Issues:** [GitHub Issues](https://github.com/liebemama/RepoSmith/issues)  \r\n- \ud83d\udcac **Discussions:** [Join the Conversation](https://github.com/liebemama/RepoSmith/discussions)  \r\n- \ud83d\udc96 **Sponsor:** [GitHub Sponsors](https://github.com/sponsors/liebemama)  \r\n- \ud83d\udce7 **Contact:** [info@tameronline.com](mailto:info@tameronline.com)\r\n\r\n---\r\n\r\n\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Portable project bootstrapper (venv, gitignore, license, vscode, etc.)",
    "version": "0.2.10",
    "project_urls": {
        "Homepage": "https://github.com/liebemama/RepoSmith",
        "Issues": "https://github.com/liebemama/RepoSmith/issues",
        "Repository": "https://github.com/liebemama/RepoSmith",
        "Sponsor": "https://github.com/sponsors/liebemama",
        "Support": "https://github.com/liebemama/RepoSmith/discussions"
    },
    "split_keywords": [
        "bootstrap",
        " venv",
        " gitignore",
        " license",
        " vscode",
        " scaffold",
        " cli"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "25edf693f8b934be1b6bbbe119a5e0f872611f881e363cd3030090ffb43e9790",
                "md5": "4be172e798826f07619733ab452e8beb",
                "sha256": "2d2996ea2e115af41b4a4abd8594cb900d390d7b84e55e741377a294da9b637f"
            },
            "downloads": -1,
            "filename": "reposmith_tol-0.2.10-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4be172e798826f07619733ab452e8beb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 17838,
            "upload_time": "2025-09-07T01:37:43",
            "upload_time_iso_8601": "2025-09-07T01:37:43.464349Z",
            "url": "https://files.pythonhosted.org/packages/25/ed/f693f8b934be1b6bbbe119a5e0f872611f881e363cd3030090ffb43e9790/reposmith_tol-0.2.10-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "03717c001aea33c535c83701929ea4876db738120ee55cf9edb331023d75295a",
                "md5": "add3458c998baca7d0bd2e63eac15c90",
                "sha256": "923c12faf6bd0a54b4781cc6a34db3f901dcc818fa91b7a160cc0e24358ea74c"
            },
            "downloads": -1,
            "filename": "reposmith_tol-0.2.10.tar.gz",
            "has_sig": false,
            "md5_digest": "add3458c998baca7d0bd2e63eac15c90",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 19645,
            "upload_time": "2025-09-07T01:37:45",
            "upload_time_iso_8601": "2025-09-07T01:37:45.008401Z",
            "url": "https://files.pythonhosted.org/packages/03/71/7c001aea33c535c83701929ea4876db738120ee55cf9edb331023d75295a/reposmith_tol-0.2.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-07 01:37:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "liebemama",
    "github_project": "RepoSmith",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "reposmith-tol"
}
        
Elapsed time: 0.42959s