--- title: Contributing description: 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 ```bash git clone https://github.com/AmanVarshney01/create-better-t-stack.git cd create-better-t-stack bun install ``` ## Develop the CLI ```bash cd apps/cli # optional global link for testing anywhere bun link # run in watch mode bun dev:cli ``` ## Develop the Docs ```bash # 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 ```bash # CLI cd apps/cli && bun dev:cli # Web bun dev:web # Format bun run format # Type checks bun check ``` 6. (CLI changes) Add a changeset ```bash bunx changeset select create-better-t-stack # Choose 'patch' for small fixes, 'minor' for features # Never choose 'major' ``` 7. Commit and push ```bash git add . git commit -m "feat(web): ..." # or fix(cli): ... git push origin ``` 8. Open a Pull Request and link any related issues ## Help - Issues and Discussions on GitHub - Discord: https://discord.gg/ZYsbjpDaM5 See full contributor guide in the repository: `.github/CONTRIBUTING.md`.