4.4 KiB
Welcome to DocsGPT Contributing Guidelines
Thank you for choosing to contribute to DocsGPT! We are all very grateful!
🎉 Join the Hacktoberfest with DocsGPT and Earn a Free T-shirt! 🎉
We accept different types of contributions
📣 Discussions - Engage in conversations, start new topics, or help answer questions.
🐞 Issues - This is where we keep track of tasks. It could be bugs,fixes or suggestions for new features.
🛠️ Pull requests - Suggest changes to our repository, either by working on existing issues or adding new features.
📚 Wiki - This is where our documentation resides.
🐞 Issues and Pull requests
We value contributions in the form of discussions or suggestions. We recommend taking a look at existing issues and our roadmap.
If you're interested in contributing code, here are some important things to know:
We have a frontend built with React (Vite) and a backend in Python.
If you are looking to contribute to frontend (⚛️React, Vite):
- The current frontend is being migrated from
/applicationto/frontendwith a new design, so please contribute to the new one. - Check out this milestone and its issues.
- The Figma design can be found here.
Please try to follow the guidelines.
If you are looking to contribute to Backend (🐍 Python):
- Review our issues and contribute to
/applicationor/scripts(please disregard oldingest_rst.pyingest_rst_sphinx.pyfiles; they will be deprecated soon). - All new code should be covered with unit tests (pytest). Please find tests under
/testsfolder. - Before submitting your Pull Request, ensure it can be queried after ingesting some test data.
Testing
To run unit tests from the root of the repository, execute:
python -m pytest
Workflow 📈
Here's a step-by-step guide on how to contribute to DocsGPT:
-
Fork the Repository:
- Click the "Fork" button at the top-right of this repository to create your fork.
-
Create and Switch to a New Branch:
- Create a new branch for your contribution using:
git checkout -b your-branch-name
- Create a new branch for your contribution using:
-
Make Changes:
- Make the required changes in your branch.
-
Add Changes to the Staging Area:
- Add your changes to the staging area using:
git add .
- Add your changes to the staging area using:
-
Commit Your Changes:
- Commit your changes with a descriptive commit message using:
git commit -m "Your descriptive commit message"
- Commit your changes with a descriptive commit message using:
-
Push Your Changes to the Remote Repository:
- Push your branch with changes to your fork on GitHub using:
git push origin your-branch-name
- Push your branch with changes to your fork on GitHub using:
-
Submit a Pull Request (PR):
- Create a Pull Request from your branch to the main repository. Make sure to include a detailed description of your changes and reference any related issues.
-
Collaborate:
- Be responsive to comments and feedback on your PR.
- Make necessary updates as suggested.
- Once your PR is approved, it will be merged into the main repository.
-
Testing:
- Before submitting a Pull Request, ensure your code passes all unit tests.
- To run unit tests from the root of the repository, execute:
python -m pytest
-
Questions and Collaboration:
- Feel free to join our Discord. We're very friendly and welcoming to new contributors, so don't hesitate to reach out.
Thank you for considering contributing to DocsGPT! 🙏
Questions/collaboration
Feel free to join our Discord. We're very friendly and welcoming to new contributors, so don't hesitate to reach out.