Skip to main content

ghboot

From empty folder to GitHub repo in one command.

ghboot is a small CLI tool and importable Python library that bootstraps a directory into a fully initialized git repository — with a .gitignore, a README.md, an initial commit, and a GitHub remote — interactively, in seconds.


What it does

ghboot /path/to/my-project
  1. git init — prompts before initializing, skips if already a repo
  2. .gitignore — auto-detects your project type (Python, Node, Go, Rust, Ruby, Java) and fetches the matching template from the GitHub API; falls back to a generic template if offline or undetected
  3. README.md — creates a minimal # project-name file; skips if one exists
  4. Initial commit — stages everything and commits with "Initial commit"
  5. GitHub remote — uses the gh CLI to create the remote repo, prompt for name/owner/visibility, and push; skips gracefully if gh is not installed

Install

pip install ghboot

Or install in editable mode from source:

git clone https://github.com/you/ghboot
cd ghboot
pip install -e .

Usage

CLI

# bootstrap the current directory
ghboot

# bootstrap a specific path
ghboot ~/projects/my-new-thing

Interactive prompts guide you through each decision point:

Initialize git repo here? [Y/n]
Using Python .gitignore template.
Repo name [my-new-thing]:
Owner:
  1. yourname (personal)
  2. your-org
Select [1]:
Visibility [private/public, default: private]:
Created https://github.com/yourname/my-new-thing

Python API

from ghboot import bootstrap

# non-interactive, all defaults
bootstrap(path=".")

# interactive — prompts at each decision point
bootstrap(path=".", interactive=True)

Requirements

  • Python 3.10+
  • git available in PATH
  • gh CLI — optional, only needed for the GitHub remote step

What it explicitly does NOT do

  • No LLM calls
  • No framework-specific config
  • No branch management beyond main/master
  • No CI/CD setup

It does one thing and does it well. Anything beyond that is someone else's job.


License

MIT

Metadata

Release files for ghboot 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ghboot 0.1.0
File Size Uploaded
ghboot-0.1.0.tar.gz 6.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ghboot 0.1.0
File Interpreter ABI Platform
ghboot-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.7 kB

Release files / ghboot-0.1.0.tar.gz

Download URL ghboot-0.1.0.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7b3200090e6cca6df35d45c953807a53673e3a14b88db2eb31cf157686511a8f
BLAKE2b-256 checksum
How to use checksums
a8882698c8ad737eca06600884cb1b40d7a4cf233e2bf49e3cab2995efdda45d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release files / ghboot-0.1.0-py3-none-any.whl

Download URL ghboot-0.1.0-py3-none-any.whl
Size 7.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bd72c0cb0df65a5cbe4de1d99850ad204d65a95621ce52f1b146230bacf5ca30
BLAKE2b-256 checksum
How to use checksums
6145b2dae50517fe228d26fb66d397f23312ec3c76eae8c2924b76bf748c2130
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page