We’re excited that you’re interested in contributing to DjangoDoo! Follow these steps to get started and make your contributions count.
-
Fork the Repository
- Go to DjangoDoo GitHub Repository.
- Click the Fork button in the top-right corner to create your copy of the repository.
-
Clone Your Fork
Open your terminal and run:git clone https://github.com/<your-username>/djangodoo.git cd djangodoo
-
Set the Upstream Remote
Add the original repository as the upstream:git remote add upstream https://github.com/MehediMK/djangodoo.git
-
Install Dependencies
Create a virtual environment and install the required dependencies:python -m venv env source env/bin/activate # For Linux/Mac env\Scripts\activate # For Windows pip install -r requirements.txt
-
Run the Project Locally
Start the development server to ensure the project is working:python manage.py migrate python manage.py runserver
-
Explore the Issues
- Check out the Issues section.
- Look for issues labeled
good first issue
for beginners or tackle more advanced ones.
-
Create a New Branch
Always work on a separate branch for your changes:git checkout -b feature/your-feature-name
-
Make Your Changes
- Follow the Django coding standards.
- Write clear and meaningful commit messages.
-
Run Tests
Before pushing, make sure all tests pass:python manage.py test
-
Push Your Changes
Push your branch to your fork:git add . git commit -m "Describe your changes here" git push origin feature/your-feature-name
-
Create a Pull Request (PR)
- Go to your forked repository on GitHub.
- Click Compare & Pull Request.
- Add a meaningful title and description to your PR.
- Link the issue it addresses (if applicable).
-
Wait for Review
- The maintainers will review your PR.
- Be ready to make changes if requested.
- Follow PEP 8 standards for Python code.
- Use meaningful variable and function names.
- Write modular, reusable, and documented code.
- Add comments to explain complex logic.
- Fix bugs listed in Issues.
- Add new features (check the roadmap in the README).
- Write or improve the documentation.
- Optimize code for better performance.
- Create new modules or templates for DjangoDoo.
- Discussion: Open an issue with your question or idea.
- DM Me: Reach out on LinkedIn or GitHub if you’re stuck.