Skip to content

Latest commit

 

History

History
181 lines (123 loc) · 3.7 KB

File metadata and controls

181 lines (123 loc) · 3.7 KB

Contributing to CC Mate

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.

🛠️ Development Setup

Prerequisites

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

Installing pnpm

# If you don't have pnpm installed
npm install -g pnpm

Setup Instructions

  1. Clone the repository
git clone https://github.com/djyde/ccmate.git
cd ccmate
  1. Install dependencies
pnpm install
  1. Start development server
pnpm tauri dev

The application will open in a new window with hot-reload enabled for both frontend and backend changes.

🚀 Build Commands

Development

# 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

Code Quality

# Format code with Biome
pnpm exec biome check .

# Format code (Biome)
pnpm exec biome format .

# TypeScript type checking
pnpm tsc --noEmit

📋 Development Guidelines

🔄 Development Workflow

1. Create a Feature Branch

git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix

2. Make Your Changes

  • Follow the code style guidelines
  • Add comments for complex logic
  • Update documentation if needed
  • Test your changes thoroughly

3. Quality Checks

# Check TypeScript errors
pnpm tsc --noEmit

# Format code
pnpm exec biome format .

# Run any existing tests
# (test commands will be added here when available)

4. Commit Your Changes

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 features
  • fix: for bug fixes
  • docs: for documentation changes
  • style: for code formatting changes
  • refactor: for code refactoring
  • test: for adding tests
  • chore: for maintenance tasks

5. Submit a Pull Request

  • Push your branch to GitHub
  • Create a pull request with a clear description
  • Link any relevant issues
  • Wait for code review

🐛 Bug Reports

When reporting bugs, please include:

  • OS and version
  • CC Mate version
  • Steps to reproduce
  • Expected behavior
  • Actual behavior
  • Relevant logs or screenshots

💡 Feature Requests

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

🤝 Getting Help

  • GitHub Issues: For bug reports and feature requests
  • GitHub Discussions: For questions and community discussion
  • Documentation: Check existing docs first

📋 Code Review Process

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.

🙏 Recognition

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! 🎉


📄 License

By contributing to this project, you agree that your contributions will be licensed under the same license as the project (AGPL v3).