Thank you for your interest in contributing! Here's how to get started.
This workspace uses pnpm. Please use pnpm commands in examples and keep pnpm-lock.yaml as the canonical lockfile.
git clone https://github.com/blueberrycongee/termcanvas.git
cd termcanvas
pnpm install
pnpm dev- Fork the repository and create a feature branch from
main. - Make your changes with clear, atomic commits.
- Run type checking before submitting:
pnpm typecheck
pnpm build- Open a Pull Request against
main.
Do not add package-lock.json files back to the repo as part of routine dependency changes.
Use Conventional Commits:
feat: add new feature
fix: resolve bug
docs: update documentation
refactor: restructure code without behavior change
- TypeScript strict mode
- 2-space indentation
- Tailwind CSS for styling
- Zustand for state management
- Prefer inline Tailwind over CSS classes
Open an issue at github.com/blueberrycongee/termcanvas/issues with:
- Steps to reproduce
- Expected vs actual behavior
- OS and Node.js version
By contributing, you agree that your contributions will be licensed under the MIT License.