Skip to content

Latest commit

 

History

History
125 lines (90 loc) · 3.21 KB

File metadata and controls

125 lines (90 loc) · 3.21 KB

Contributing to Sidequest

Thank you for your interest in contributing to Sidequest! 🎉
We welcome contributions from everyone. This guide will help you get started.

Table of Contents


How Can I Contribute?

Reporting Bugs

  • Please use GitHub Issues to report bugs.
  • Include as much information as possible, such as:
    • Steps to reproduce
    • Expected and actual behavior
    • Error messages and logs
    • Node.js and OS version
    • A minimal reproducible example, if possible

Suggesting Enhancements

  • Before opening a new issue, check existing issues.
  • Clearly describe the enhancement and its benefits.
  • Include relevant examples or use cases.

Submitting Pull Requests

  1. Fork the repository and clone your fork locally.
  2. Create a new branch for your feature or fix:
    git checkout -b your-feature-name
  3. Make your changes
  4. 🚨 Write tests 🚨
  5. Follow the style guide (see below).
  6. Lint your code yarn lint
  7. Commit your changes (see Commit Messages).
  8. Push your branch and open a Pull Request against master.
  9. Describe your changes clearly in the PR.

Pull Request Checklist

  • All tests pass (yarn test:all)
  • Code follows the style guide and passes lint checks
  • Documentation is updated (README, docs, etc)
  • Linked to corresponding issue, if applicable

Development Setup

  1. Install dependencies:

    yarn install
  2. Build the project:

    yarn build
  3. Start DBs for tests:

    yarn db:all
  4. Run tests:

    yarn test:all
  5. Run in development mode:

    yarn dev

For CLI development, install globally:

yarn global add @sidequest/cli

Style Guide

  • Use TypeScript for all source code.
  • Follow the project's existing code style (see prettier.config.js).
  • Write JSDoc style docstrings for all exported entities.
  • Avoid unnecessary changes to unrelated files.

Commit Messages

  • Use Conventional Commits style:
    • fix: for bug fixes
    • feat: for new features
    • docs: for documentation changes
    • refactor: for code refactoring
    • test: for adding or fixing tests
    • chore: for maintenance tasks

License

By contributing, you agree that your contributions will be licensed under the LGPL v3.


If you have any questions, feel free to open an issue or reach out to the maintainers.

Happy coding! 🚀