Thank you for considering contributing to the MichaelAngel.io Framework! We appreciate your time and effort in helping us make this project better.
There are several ways you can contribute to MichaelAngel.io:
- Bug Reports: If you find bugs, inconsistencies, or any issues, please report them.
- Feature Requests: Suggest new features that could be beneficial to the project.
- Documentation: Help us improve the documentation or add missing details.
- Code Contributions: Fix bugs, improve existing code, or add new features.
- Testing: Test new features and fixes, provide valuable feedback.
-
Fork the Repository
Start by forking the repository to your personal GitHub account.
git clone https://github.com/your-username/MichaelAngel.io.git
-
Create a Branch
Create a new branch for your changes to ensure that they are isolated and easy to review.
git checkout -b feature/your-feature-name
-
Install Dependencies
Make sure to have Python 3.8+ installed and then install the required dependencies.
pip install -r requirements.txt
-
Make Your Changes
Implement your feature, fix a bug, or improve documentation.
-
Run Tests
Before submitting your changes, run the tests to verify your changes do not break anything.
pytest
-
Commit Changes
Use meaningful commit messages to describe your changes.
git commit -m "Add feature: your feature description"
-
Push to GitHub
Push your branch to your fork.
git push origin feature/your-feature-name
-
Create a Pull Request
Navigate to the main repository and create a pull request (PR). Provide a clear description of the changes you made and their purpose.
- Follow PEP 8 guidelines for Python code.
- Write descriptive variable and function names.
- Include meaningful comments when necessary.
- Keep your commit messages short and informative.
- Use imperative mood (e.g., "Add feature" instead of "Added feature").
- Provide a more detailed explanation if necessary in the extended commit body.
- Ensure your code passes all tests before submitting a PR.
- Keep pull requests focused on a single change (feature, fix, or improvement).
- Reference related issues in the PR description if applicable.
- Please add tests for new features.
- Fixing a bug? Please add a test that reproduces the bug.
This project adheres to a Code of Conduct. By participating, you are expected to uphold this code.
If you encounter issues with the project, please use GitHub Issues to report them. When reporting, please be as detailed as possible:
- Provide the steps to reproduce the issue.
- Include your system information and environment setup.
- If applicable, add screenshots or error messages.
For proper attribution, include the following details in a new or existing ATTRIBUTION.md
file:
[Modified Project Title]
**Original Work:** Based on "MichaelAngel.io" by M1ck4, licensed under the [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-nc-sa/4.0/).
**Modifications:** Modified by [Modifier's Name] on [Date]. Changes include...
**License:** This derivative work is licensed under the [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-nc-sa/4.0/).
**Material Link:** [Link to the modified project material]
**Availability:** Available under the same license conditions as the original.
```## Suggestions and Ideas
We are always open to new ideas! Feel free to open an issue for suggestions or discuss them in your pull request.
## Thank You!