Minimal TypeScript starter for Bun. Includes Biome for linting/formatting, Lefthook for git hooks, and semantic-release for automated versioning.
Prerequisites: Bun >= 1.0
# Use this template on GitHub, then:
git clone https://github.com/<your-username>/<your-repo>
cd <your-repo>
bun install| Command | Description |
|---|---|
bun run dev |
Run with file watcher |
bun run build |
Compile to dist/ |
bun test |
Run tests |
bun run check |
Lint + format (Biome, auto-fix) |
bun run lint |
Lint only |
bun run format |
Format only |
src/ # Source code
tests/ # Test files (*.test.ts)
dist/ # Build output (git-ignored)
Lefthook runs automatically after bun install (via the prepare script):
- pre-commit — Biome checks and auto-fixes staged files
- commit-msg — Validates Conventional Commits format
Releases are automated via semantic-release on every push to main:
feat:→ minor releasefix:→ patch releasefeat!:orBREAKING CHANGE:→ major release
The CI workflow handles changelog generation, GitHub releases, and version bumping automatically.