Skip to content

Latest commit

 

History

History
97 lines (74 loc) · 6.99 KB

CONTRIBUTING.md

File metadata and controls

97 lines (74 loc) · 6.99 KB

Thank you for taking the time to contribute to NoteX.

All types of contributions are encouraged and valued. See the Table of Contents for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us maintainers and smooth out the experience for all involved. The community looks forward to your contributions.

And if you like the project, but just don't have time to contribute, that's fine. There are other easy ways to support the project and show your appreciation, which we would also be very happy about:

  • Join our Discord server
  • Star the project
  • Tweet about it
  • Mention the project at local meetups and tell your friends/colleagues

Table of Contents

I Want To Contribute

First off, thank you for taking the time to contribute! It's people like you that make NoteX such a great tool. There are many ways to contribute, from writing blog posts, improving the documentation, submitting bug reports and feature requests or writing code which can be incorporated into NoteX itself. We welcome all contributions, no matter how big or small. We try to make it as easy as possible, but there are some things to keep in mind when contributing to NoteX.

You can go through the existing issues and pick one that interests you. If you have an idea for a new feature or want to report a bug, please open an issue first. This way we can discuss the details and figure out whether it's a good fit for the project and how to implement it. If you have any questions, feel free to ask them as well.

I Have a Question

If you have any questions about NoteX, please open an issue or drop it in our Discord server. We will try to answer it as soon as possible.

Reporting Bugs

This section guides you through submitting a bug report for NoteX. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior and find related reports. Before creating bug reports, please check the open issues as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible. Fill out the required template, the information it asks for helps us resolve issues faster.

How Do I Submit A (Good) Bug Report?

Bugs are tracked as GitHub issues. After you've determined which repository your bug is related to, create an issue on that repository and provide the following information by filling in the template.

Bug Report Template

## Description
A clear and concise description of what the bug is.

## Steps To Reproduce
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

## Expected Behavior
A clear and concise description of what you expected to happen.

## Screenshots
If applicable, add screenshots to help explain your problem.

## Additional Context
Add any other context about the problem here.

Suggesting Enhancements

This section guides you through submitting an enhancement suggestion for NoteX, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion and find related suggestions. Before creating enhancement suggestions, please check the open issues as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please include as many details as possible. Fill in the template, including the steps that you imagine you would take if the feature you're requesting existed.

How Do I Submit A (Good) Enhancement Suggestion?

Enhancement suggestions are tracked as GitHub issues. After you've determined which repository your enhancement suggestion is related to, create an issue on that repository and provide the following information by filling in the template:

Enhancement Suggestion Template

## Description
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

## Solution
A clear and concise description of what you want to happen.

## Alternatives
A clear and concise description of any alternative solutions or features you've considered.

## Additional Context
Add any other context or screenshots about the enhancement suggestion here.

Your First Code Contribution

Unsure where to begin contributing to NoteX? You can start by looking through these good-first-issues.

Local Development

If you want to contribute to NoteX, you will need to set up your environment and install the required dependencies. You will need to have Flutter installed on your machine. Once you have that set up, you can clone the repository and run the following command to install the dependencies:

git clone https://github.com/The-NoteX/NoteX.git
cd NoteX
flutter pub get
flutter run

If you're working on the Explore Hackathons page, you will need to set up the NoteXplorerAPI which has seperate build instructions in its README.

Pull Requests

After you have made your changes, you can open a pull request. Make sure to link the issue you are addressing in the pull request description. This helps us keep track of the changes and the discussion around them. If you are adding a new feature, please include relevant tests and make sure that all tests pass before submitting the pull request.

Improving The Documentation

NoteX could always use more documentation, whether as part of the official NoteX docs, in docstrings, or even on the web in blog posts, articles, and such. If you find a typo or think something should be clarified, please open an issue or submit a pull request with the fix. If you want to help write the documentation, please join our Discord server and let us know what you want to work on.

Code of Conduct

NoteX has adopted the Contributor Covenant Code of Conduct that we expect project participants to adhere to. Please read so that you can understand what actions will and will not be tolerated.