We welcome contributions! Please follow these guidelines to ensure a smooth process.
- Fork the repository.
- Create a feature branch (
git checkout -b feat/amazing-feature). - Commit your changes (
git commit -m 'Add some amazing feature'). - Push to the branch (
git push origin feat/amazing-feature). - Open a Pull Request.
We prefer Conventional Commits:
feat:for new features.fix:for bug fixes.docs:for documentation changes.refactor:for code changes that neither fix a bug nor add a feature.chore:for updating build tasks, package manager configs, etc.
- Run
pnpm lintto check for ESLint errors. - Ensure TypeScript types are correctly defined.
- Run
cargo fmtto format your code. - Run
cargo clippyto check for common mistakes and improvements. - Ensure all new commands are reflected in the CLI subcommands in
src-tauri/src/bin/cubiq.rs.
Before submitting your PR, please ensure:
- The app builds successfully (
pnpm tauri build). - The CLI sidecar script runs without errors (
.\scripts\build-cli-sidecar.ps1). - You have tested both the GUI and the CLI for regression.
- You have updated the documentation in
docs/if you added new features or changed behaviors. - Your commits follow the conventional style.
- GUI: Test both the Main window and the QuickAsk popup.
- CLI: Test
cubiq statusandcubiq askas a baseline. - Database: Ensure any schema changes include a new migration in
src/db.rs.