-
Notifications
You must be signed in to change notification settings - Fork 0
Contribution Guidelines
Welcome, and thank you for your interest in contributing to this project!
There are many ways in which you can contribute, beyond writing code. The goal of this document is to provide a high-level overview of how you can get involved.
Have a question? Feel free to ask it on GitHub Discussions board.
Your comments and feedback are welcome. You can leave your feedback on GitHub Discussions.
Have you identified a reproducible problem in the extension? Have a feature request? Here's how you can make reporting your issue as effective as possible.
Before you create a new issue, please do a search in open issues to see if the issue or feature request has already been filed.
If you find your issue already exists, make relevant comments and add your reaction. Use a reaction in place of a "+1" comment:
- 👍 - upvote
- 👎 - downvote
If you cannot find an existing issue that describes your bug or feature, create a new issue using the guidelines below.
File a single issue per problem and feature request. Do not enumerate multiple bugs or feature requests in the same issue.
Do not add your issue as a comment to an existing issue unless they are the same ones. Many issues look similar but have different causes.
The more information you can provide, the more likely someone will be successful at reproducing the issue and finding a solution.
For your convenience, we've added issue templates to make easier for you to follow these guidelines. These are available in the new issue section.
Please remember to do the following:
- Search the issue repository to ensure your report is a new issue
- Separate issues reports
- Include as much information as you can to your report
Don't feel bad if the developers can't reproduce the issue right away. They will simply ask for more information!
Once your report is submitted, be sure to stay in touch with the devs in case they need more help from you.
Important
Whenever you want to contribute to the codebase, you should do it only after you got assigned on an issue
If you are interested in writing code to fix issues or implement new awesome features, you can follow these guidelines to get a better result.
Check out the issues section for a list of all potential areas for contributions.
To improve the chances to get a pull request merged you should select an issue that is labeled with the help-wanted label. If the issue you want to work on is not labeled with help-wanted, you can start a conversation with the project maintainers asking whether an external contribution will be considered.
Important
Just because an issue exists in the repository does not mean we will accept a contribution.
To avoid multiple pull requests resolving the same issue, make sure that you are assigned on the issue.
Warning
Avoid working on an issue that is not assigned to you (especially, when it is assigned to someone else!) We may reject these PRs!
Note
If you use Dev Containers or GitHub Codespaces, you can skip this section
- Latest .NET SDK
- VS Code (optional, but strongly recommended)
Tip
It is strongly recommended to use VS Code editor during development, since this repository comes with pre-defined rules, extensions and other features for the VS Code that will significantly simplify development process.
Once you have cloned the repository you will find several projects:
-
libraries/SimpleOTP- main project -
libraries/SimpleOTP.DependencyInjection- DI project for ASP.NET applications -
SimpleOTP.Tests- unit-testing project
Tip
If you use VS Code, you can use pre-defined tasks to run most of required actions (F1 -> Tasks: Run Task)
Important
If your contribution affects any critical area (a major feature is implemented, or a critical bug is fixed), make sure you have created and/or updated unit tests for this area.
Please refer to the Code style guidelines to learn more about code formatting rules for this project.
Pull requests that fix typos are welcomed but please make sure it doesn't touch multiple feature areas, otherwise it will be difficult to review. Pull requests only fixing spell check errors in source code (not visible in UI) are not recommended.
Important
Whenever you want to contribute to the codebase, you should do it only after you got assigned on an issue
To enable us to quickly review and accept your pull requests, always create one pull request per issue and link the issue in the pull request. Never merge multiple requests in one unless they have the same root cause. Be sure to follow our Coding Guidelines and keep code changes as small as possible. Avoid pure formatting changes to code that has not been modified otherwise. Fill pull request content according to its template. Deviations from the template are not recommended.
This section will give you an overview of the development process. Use these steps to understand what you need to expect and do.
- New issue is created
- Contributor is assigned to the issue
- A fork or a dedicated branch is created for the issue
- Changes to the codebase are made
- PR into corresponding version branch is opened
- PR passes reviews and CI checks
- PR is merged
- New release is automatically created
- The cycle repeats
Your contributions to open source, large or small, make great projects like this possible. Thank you for taking the time to contribute.
These Contribution Guidelines are adapted from the Contributing to VS Code
©2025 Eugene Fox. Licensed under MIT license