Contributing

How to set up your environment and contribute changes

Overview

This project is a monorepo with two main apps:

  • CLI: apps/cli
  • Documentation site: apps/web

Note: Planning to add a new feature? Please open an issue first to confirm it aligns with the project's future goals. We don't want you to spend time on work that might not land.

Setup

Prerequisites

  • Node.js 20+
  • Bun (recommended)
  • Git

Install

git clone https://github.com/AmanVarshney01/create-better-t-stack.git
cd create-better-t-stack
bun install

Develop the CLI

cd apps/cli
# optional global link for testing anywhere
bun link
# run in watch mode
bun dev:cli

Develop the Docs

# from repo root
bun dev:web

Contribution Flow

  1. Open an issue/discussion before starting major work
  2. Create a feature branch
  3. Make changes following existing code style
  4. Update docs as needed
  5. Test and format
# CLI
cd apps/cli && bun dev:cli

# Web
bun dev:web

# Format
bun run format

# Type checks
bun check
  1. (CLI changes) Add a changeset
bunx changeset select create-better-t-stack
# Choose 'patch' for small fixes, 'minor' for features
# Never choose 'major'
  1. Commit and push
git add .
git commit -m "feat(web): ..." # or fix(cli): ...
git push origin <your-branch>
  1. Open a Pull Request and link any related issues

Help

See full contributor guide in the repository: .github/CONTRIBUTING.md.