We believe that open-source projects thrive not only through code contributions but also through a diverse range of non-code contributions. Your involvement and expertise in various areas can greatly enhance the project and its community. Here are some ways you can contribute beyond writing code:
- Documentation 📑 : Improve, expand project documentation to make it more comprehensive and accessible.
- Design and User Experience 🎨: Help create an intuitive user interface, design graphics, or enhance the overall user experience.
- Quality Assurance ⚒️ : Assist in testing the software, identifying bugs, and ensuring the project functions correctly across different environments.
- Issue Management 📬 : Help categorize issues, organize feature requests, track pending tasks, and maintain an up-to-date task list.
- Performance Optimization 📊 : Collaborate on improving code performance and optimization to make the project faster and more efficient.
- Accessibility Improvement 🛟 : Work on making the project more accessible to individuals with disabilities, ensuring it adheres to web accessibility standards.
- Art and Graphics 👨🎨 : Contribute illustrations, graphics, icons, or other visual elements that can enhance the overall presentation of the project.
We appreciate your commitment to making this project a success, and we welcome your contributions in all forms. Your involvement helps create a vibrant and inclusive open-source community.
Thank you for being part of our journey!
Thank you for considering contributing to this project! We appreciate your time and effort. Please take a moment to review the following guidelines to ensure a smooth and effective collaboration.
- Install Nodejs v20 (check your node version with
node -v
) - Fork the
development branch
repository and clone it to your local machine. - Create your
.env
file with these values:
PORT=5000
URL_SERVER=https://url.com
LIMIT=2000
MONGOOSE_USER=mongodb+srv://{YOUR_USER}:{YOUR_PASSWORD}@cluster0.4g3ly.mongodb.net/?retryWrites=true&w=majority
MONGOOSE_USER
: you only need's a db user if you are gonna change something related to the db** or wanna try the project in a local env.
- Install dependencies with
npm i
- Create a new branch for your contribution.
- Make your changes, Commit Message Structure them with clear and descriptive messages, and push the branch to your forked repository
- Test your changes
npm run test
(only if your commit has backend stuff). - Submit a pull request with evidences at Development, explaining the purpose and details of your contribution.
- Code Styles are provided by eslint & prettier
- Yours Pull Requests should follow the next structure (the repo has a boilerplate to do that):
- As (
Developer
) - I want to (
Your changes
) - To (
Feature
) - Happy path (
succesfull case screenshoot
) - Unhappy path (
unsuccesfull case screenshots , more than 1 if applies
)
- As (
The application was tested with Jest, Chai and Supertest
- to run integration test:
npm run test:integration
- to run unit tests:
npm run test:unit
- to run the whole test:
npm run test
Please follow the commit message structure below:
type:
: The type of the commit (e.g., feature, bug fix, documentation, resolve, etc)description
: A concise description of the changes made.(optional)[#issue]
: Related issue to that task.
We use GitHub issues to track tasks and enhancements. If you find a bug, have a feature request, or want to suggest an improvement, please create a new issue. Follow these steps:
- Go to the Issues section of the repository.
- Click on "New Issue" and provide a clear and descriptive title.
- Fill in the issue template with all the necessary details, including steps to reproduce (if applicable).
- We have different's boilerplates to issues, be sure to choose the correct one.
All contributions will go through a code review process to ensure code quality and maintainability. Here's how it works:
- Submit a pull request with your changes.
- If your changes does not break any old code, your pr will be merged, in case your Pr is incorrect we will leave a comment in your pr
- Make the necessary changes based on the feedback received.
- Once the code is approved, it will be merged into the main branch.
Please note that this project follows a code of conduct. We expect all contributors to adhere to the guidelines outlined in the Code of Conduct.
Thank you for your contributions and happy coding!