Skip to content

Latest commit

 

History

History
67 lines (56 loc) · 1.96 KB

CONTRIBUTING.md

File metadata and controls

67 lines (56 loc) · 1.96 KB

Contributing to Dhruv CLI

Thank you for your interest in contributing! 🎉

How to Contribute

  • Bug Reports & Feature Requests:
  • Pull Requests:
    • Fork the repo and create a new branch for your change.
    • Write clear, concise commit messages.
    • Ensure your code passes lint and build checks.
    • Add or update tests as needed.
    • Document your changes in the PR description.

Development Setup

  1. Clone the repo and install dependencies:
    git clone <repo-url>
    cd devai-cli
    npm install
  2. Build and run locally:
    npm run build
    npm start
  3. For development:
    npm run dev

Code Style

  • Use TypeScript and follow the existing code style.
  • Run npx eslint . before submitting a PR.

Testing

  • Add tests for new features or bug fixes.
  • Run tests with npm test.

Commit Message Guidelines

  • Use Conventional Commits for commit messages.
  • Allowed PR title types:
    • feat
    • fix
    • chore
    • docs
    • refactor
    • style
    • test
    • ci
  • Example: fix: update version to 1.1.3 and improve streaming response handling
  • PR titles are checked automatically in CI. See .github/workflows/contribution.yml for details.

Releases

  • PRs are squash-merged, so the PR title becomes the commit that semantic-release reads.
  • Only feat (minor), fix, perf (patch) and breaking changes (type!:) publish a new version. refactor, chore, docs, style, test and ci never do.
  • If a PR changes src/ under a non-releasing type, CI fails until you decide:
    • users will see the change → retitle it fix: or feat:;
    • they won't (a pure refactor) → add the no-release label.

Code of Conduct

License

By contributing, you agree that your contributions will be licensed under the MIT License.