Thank you for your interest in contributing to Schwarz! We welcome all kinds of contributions, whether they are non-code related or involve coding. Here's how you can get involved:
If you come across any bugs or issues in Schwarz, please help us by reporting them. To report a bug:
-
Check Existing Issues: Ensure the issue hasn't been reported already by checking the Issues tab of the repository.
-
Create a New Issue: If the bug hasn't been reported, create a new issue. Clearly describe the problem, steps to reproduce it, and any error messages encountered.
Have an idea for a new feature or an enhancement? We're all ears! To request a new feature:
-
Check Existing Features: Verify that the feature hasn't been requested or implemented by reviewing existing issues.
-
Open a New Issue: If it's a new request, open a new issue. Clearly describe the feature you'd like to see and why it would be valuable.
Improving our documentation is a great way to contribute. Whether it's fixing typos, clarifying instructions, or adding new guides, your help is appreciated. To contribute to our documentation:
-
Fork and Clone: Fork this repository and clone it to your local machine.
-
Edit or Add Documentation: Make your changes or create new documentation within the
docs
folder. -
Submit a Pull Request: Push your changes to your forked repository and submit a pull request. Describe your changes clearly for review.
We welcome UI/UX design contributions to enhance the user experience of Schwarz. Our design guidelines and components are maintained in a Figma file. Here's how you can contribute to our design:
-
Access the Figma File: Our design guidelines and components are available in our Figma file: Schwarz Figma Design.
-
Explore and Contribute: Review the existing designs and components. If you have ideas for improvements or new designs, create your designs within the Figma file.
-
Share Your Designs: After creating your designs, share them in the designated channels within the Figma file or create a new discussion thread for feedback.
-
Collaborate: Feel free to collaborate with other designers and developers. Discuss your designs, get feedback, and iterate on your work.
-
Fork the Repository:
- Navigate to the Schwarz GitHub repository.
- Click the "Fork" button in the top-right corner of the repository's page. This will create a copy of the repository in your GitHub account.
-
Clone Your Fork:
- Open your forked repository on GitHub (it should be at
https://github.com/your-username/Schwarz
). - Click the "Code" button and copy the URL of your forked repository.
- On your local machine, open your terminal or command prompt.
- Navigate to the directory where you want to clone the repository using the
cd
command. - Run the following command, replacing
<your-username>
with your GitHub username:git clone https://github.com/your-username/schwarz-repo.git
- Open your forked repository on GitHub (it should be at
-
Set Up Remote Upstream:
-
Change your directory to the cloned repository:
cd Schwarz
-
Add the original Schwarz repository as a remote named "upstream" to stay synced with the latest changes:
git remote add upstream https://github.com/Schwarz-Official/Schwarz.git
-
-
Install Dependencies: Schwarz has both frontend (React) and backend (Django) components. First, install the required packages in both the
frontend
andbackend
folders:# Inside the frontend folder cd frontend npm install # Inside the backend folder cd ../backend pip install -r requirements.txt
To run the React app, navigate to the frontend
folder and start the development server:
cd frontend
npm start
This will start the React development server. You can view the app in your browser at http://localhost:3000
.
To run the Django backend, navigate to the backend
folder and apply migrations, create a superuser, and then run the server:
cd backend
# Apply migrations
python manage.py migrate
# Create a superuser
python manage.py createsuperuser
# Run the server
python manage.py runserver
The Django server will be accessible at http://localhost:8000
.
-
Create a New Branch: Before making changes, create a new branch for your work:
git checkout -b my-feature
-
Make Changes: Make your changes, add your features, or fix bugs. Remember to follow the project's coding style.
-
Commit Your Changes: Commit your changes with a descriptive message:
git add . git commit -m "Description of your changes"
-
Push Your Changes: Push your changes to your forked repository:
git push origin my-feature
-
Create a Pull Request: Visit your forked repository on GitHub, switch to the branch you created, and click the "New Pull Request" button.
-
Describe Your Changes: Fill in a descriptive title and comment explaining your changes. Reference any related issues.
-
Review and Merge: A maintainer will review your changes. Once approved, your changes will be merged into the project.
Thank you for your contribution to Schwarz! If you have any questions or need further assistance, feel free to reach out. Happy coding! 🚀