Thank you for your interest in contributing to CC Mate! This guide will help you get started with development, building, and contributing to the project.
Before you start, ensure you have the following installed:
- Node.js 18+ with pnpm (required package manager)
- Rust 1.70+ and Cargo
- Tauri CLI dependencies for your platform
# If you don't have pnpm installed
npm install -g pnpm- Clone the repository
git clone https://github.com/djyde/ccmate.git
cd ccmate- Install dependencies
pnpm install- Start development server
pnpm tauri devThe application will open in a new window with hot-reload enabled for both frontend and backend changes.
# Check TypeScript for errors (recommended before commits)
pnpm tsc --noEmit
# Start development server with hot reload
pnpm tauri dev
# Start frontend only (useful for UI development)
pnpm dev# Format code with Biome
pnpm exec biome check .
# Format code (Biome)
pnpm exec biome format .
# TypeScript type checking
pnpm tsc --noEmitgit checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix- Follow the code style guidelines
- Add comments for complex logic
- Update documentation if needed
- Test your changes thoroughly
# Check TypeScript errors
pnpm tsc --noEmit
# Format code
pnpm exec biome format .
# Run any existing tests
# (test commands will be added here when available)git add .
git commit -m "feat: add your feature description"
# or
git commit -m "fix: resolve your bug description"Use conventional commit messages:
feat:for new featuresfix:for bug fixesdocs:for documentation changesstyle:for code formatting changesrefactor:for code refactoringtest:for adding testschore:for maintenance tasks
- Push your branch to GitHub
- Create a pull request with a clear description
- Link any relevant issues
- Wait for code review
When reporting bugs, please include:
- OS and version
- CC Mate version
- Steps to reproduce
- Expected behavior
- Actual behavior
- Relevant logs or screenshots
When requesting features:
- Use case: What problem does this solve?
- Proposed solution: How should it work?
- Alternatives considered: What other approaches did you think about?
- Additional context: Any other relevant information
- GitHub Issues: For bug reports and feature requests
- GitHub Discussions: For questions and community discussion
- Documentation: Check existing docs first
All contributions go through code review to ensure:
- Code quality and maintainability
- Adherence to project guidelines
- Proper testing and documentation
- Security considerations
Check the GitHub Issues for specific items that need help.
Contributors are recognized in:
- Release notes for significant contributions
- README contributors section (for substantial contributions)
- GitHub contributor statistics
Thank you for contributing to CC Mate! 🎉
By contributing to this project, you agree that your contributions will be licensed under the same license as the project (AGPL v3).