Thank you for your interest in contributing to the EU-CS Platform project! We appreciate your efforts and look forward to collaborating with you. To ensure a smooth and efficient contribution process, please review and follow the guidelines outlined below.
- Code of Conduct
- Getting Started
- Reporting Bugs and Feature Requests
- Submitting Changes
- Code Quality and Standards
- Testing and Continuous Integration
- Documentation
All contributors are expected to adhere to our Code of Conduct, which promotes a respectful, professional, and constructive environment. Harassment, discrimination, or other inappropriate behavior will not be tolerated.
- Fork the EU-CS Platform repository to your GitHub account.
- Clone the forked repository to your local machine.
- Set up the development environment following the instructions provided in the README file.
- Check the Issues to see if the bug or feature request has already been reported.
- If the issue doesn't exist, create a new issue using the appropriate template (bug report or feature request).
- Be as detailed as possible in your issue description, including steps to reproduce the bug, expected behavior, and any relevant error messages or screenshots.
- Before making any changes, ensure that you are working on the latest version of the
main
branch. - Create a new feature branch for your changes using a descriptive naming convention (e.g.,
feature/username-description
orbugfix/username-description
). - Make your changes in the new branch, adhering to the Code Quality and Standards guidelines.
- Test your changes thoroughly and ensure all tests pass.
- Commit your changes using concise, clear commit messages that follow a standard format.
- Push your branch to your forked repository.
- Create a pull request (PR) to the main repository, providing a clear title and description of your changes, including any relevant issue numbers.
- Address any feedback from the code review process and make any necessary changes.
- All Python code must follow PEP 8, the Python style guide, and be checked with Pylint.
- HTML and CSS should follow the W3C's HTML and CSS standards.
- JavaScript code should follow the Airbnb JavaScript Style Guide.
- Django best practices should be followed, including the use of class-based views, the DRY principle, and proper app and model design.
- All code should be tested before submitting a PR, and tests should be included in the PR when adding or modifying functionality.
- Travis CI is used for continuous integration, and the
.travis.yml
configuration file should be properly set up to run tests, build processes, and any necessary checks. - PRs must pass all Travis CI checks before being approved and merged.
- All code should be well-documented with clear comments and meaningful variable/function names.
- Project documentation should be maintained, including README files, API documentation, and any necessary user or developer guides.
By followingthese guidelines, you will help foster a productive, organized, and collaborative development environment, ensuring the highest quality code and efficient progress on the EU-CS Platform project. We look forward to working together and making a positive impact!