Skip to main content

Contributing to ThorAPI: Join the Community and Shape the Future

Thank you for your interest in contributing to ThorAPI! We warmly welcome contributions from the community, as they are essential to the growth and success of the project. This document outlines comprehensive guidelines to help you contribute effectively and ensure a smooth collaboration process.

Ways to Contribute

There are several ways you can contribute to ThorAPI:

  • Code Contributions: Submit bug fixes, new features, or improvements to existing functionality.
  • Documentation Improvements: Enhance the documentation by adding clarity, examples, tutorials, or translations.
  • Bug Reporting: Report any issues or bugs you encounter while using ThorAPI.
  • Feature Requests: Suggest new features or enhancements you believe would benefit the project.
  • Community Support: Help other users by answering questions, sharing your experiences, and providing support in community forums.
  • Code Review: Review and provide feedback on pull requests submitted by other contributors.

Contribution Workflow

Follow these steps to contribute code to ThorAPI:

  1. Fork the Repository:

    • Visit the main ThorAPI repository on GitHub.
    • Click the "Fork" button in the top right corner to create a copy of the repository in your GitHub account.
  2. Clone Your Fork:

    • Clone your forked repository to your local machine using Git:
      git clone https://github.com/your-username/thorapi.git
      cd thorapi
  3. Create a Branch:

    • Create a new branch for your contribution. Use a descriptive branch name that indicates the purpose of your changes:
      git checkout -b feature/your-feature-name
      # or
      git checkout -b bugfix/fix-issue-123
  4. Implement Your Changes:

    • Make your code changes, adhering to the project's coding standards and best practices.
    • Coding Standards: Follow the Google JavaScript Style Guide for JavaScript/TypeScript code. For other languages, adhere to widely accepted style guides for those languages.
    • Code Style Consistency: Maintain consistency with the existing codebase in terms of formatting, naming conventions, and architectural patterns.
    • Comments and Documentation: Add clear and concise comments to your code. Update relevant documentation to reflect your changes.
  5. Test Your Changes:

    • Ensure your changes are thoroughly tested.
    • Unit Tests: Write unit tests to cover new functionality and ensure existing functionality is not broken.
    • Integration Tests: If applicable, write integration tests to verify the interaction of your changes with other parts of the system.
    • Testing Frameworks: Use appropriate testing frameworks for the languages you are contributing to (e.g., Jest for JavaScript, JUnit for Java).
  6. Commit Your Changes:

    • Commit your changes with clear, concise, and descriptive commit messages. Follow conventional commit message format:
      git commit -m "feat(component): add new feature for user authentication"
    • Commit Message Guidelines:
      • Use a concise summary in the first line (max 50 characters).
      • Provide a more detailed description in the body, explaining the motivation and changes.
      • Refer to relevant issue numbers in commit messages (e.g., Fixes #123).
  7. Rebase with Main Branch:

    • Before submitting a pull request, rebase your branch with the latest changes from the main branch to avoid merge conflicts:
      git fetch origin main
      git rebase origin/main
  8. Push to Your Fork:

    • Push your changes to your forked repository:
      git push origin feature/your-feature-name
  9. Create a Pull Request:

    • Go to the original ThorAPI repository on GitHub.
    • Click the "Compare & pull request" button next to your branch.
    • Pull Request Guidelines:
      • Provide a clear and descriptive title for your pull request.
      • In the pull request description, explain the changes you've made, the problem you are solving, and the approach you've taken.
      • Include links to relevant issues or discussions.
      • If your pull request is still a work in progress, mark it as a "Draft".
  10. Code Review Process:

    • Your pull request will be reviewed by project maintainers and other contributors.
    • Be responsive to feedback and be willing to iterate on your changes.
    • Code reviews are intended to improve code quality and ensure project consistency. Be open to constructive criticism.
    • Address all comments and feedback in a timely manner.
  11. Merge and Integration:

    • Once your pull request is approved, it will be merged into the main branch.
    • Congratulations, you have successfully contributed to ThorAPI!

Community Guidelines

  • Code of Conduct: Adhere to our Code of Conduct in all interactions.
  • Respectful Communication: Be respectful and considerate in your communication with other contributors and maintainers.
  • Open and Collaborative: Foster an open and collaborative environment. Be welcoming to new contributors and ideas.
  • Seek Feedback: Don't hesitate to ask for feedback early in the contribution process.
  • Patience: Be patient during the code review process. Reviews may take time depending on complexity and maintainer availability.

Resources for Contributors

We appreciate your contributions to ThorAPI and look forward to collaborating with you!