diff --git a/README.md b/README.md index 2b707ad4c2..50e157031d 100644 --- a/README.md +++ b/README.md @@ -8,4 +8,6 @@ The website for the latest master branch (not yet released to the public) is at https://markbind-master.netlify.com. -The Developer Guide can be found at https://markbind.org/devdocs/devGuide/index.html \ No newline at end of file +The Developer Guide can be found at https://markbind.org/devdocs/devGuide/index.html + +If you're interested in contributing to MarkBind, we'd love to have you onboard! Check out our [Contribution Guide](https://markbind.org/devdocs/devGuide/contributing) for ideas on contributing and setup steps for getting our repositories up and running on your local machine. \ No newline at end of file diff --git a/docs/_markbind/layouts/devGuide/navigation.md b/docs/_markbind/layouts/devGuide/navigation.md index 49b5e0f336..8d0646dcc3 100644 --- a/docs/_markbind/layouts/devGuide/navigation.md +++ b/docs/_markbind/layouts/devGuide/navigation.md @@ -4,4 +4,6 @@ * [Developer Guide]({{baseUrl}}/devGuide/devGuide.html) * [Maintainer Guide]({{baseUrl}}/devGuide/maintainerGuide.html) +* [Contributing]({{baseUrl}}/devGuide/contributing.html) + diff --git a/docs/devGuide/contributing.md b/docs/devGuide/contributing.md new file mode 100644 index 0000000000..8130ef5d73 --- /dev/null +++ b/docs/devGuide/contributing.md @@ -0,0 +1,73 @@ + + title: "Contributing" + layout: devGuide + pageNav: default + + +# Contributing to MarkBind + +Thank you for your interest in contributing! We're glad you want to help. Read the sections below to learn about our code of conduct and how to get started contributing. + +## Code of conduct + +This project and everyone participating in it are governed by our [Code of Conduct]({{baseUrl}}/devGuide/contributing/code-of-conduct.html). By participating, you are expected to uphold this code. Please report unacceptable behavior to markbind@comp.nus.edu.sg. + +## Things to do before getting started + +Make sure you have the project set up and ready. We have guides detailing what we [expect our contributors to know]({{baseurl}}/devguide/devguide#requirement), our required [environment]({{baseurl}}/devGuide.html#environment) and our [development process]({{baseurl}}/devGuide.html#development-process). + +## How to contribute + +All contributions are welcome. You can contribute to MarkBind by: +- Reporting bugs +- Requesting features +- Making changes (with a corresponding Pull Request), by: + - Updating documentation + - Fixing bugs + - Implementing features + +### How to report a bug + +Report bugs in our [issue tracker](https://github.com/MarkBind/markbind/issues), following the guideslines below. This helps us in undestanding your report. + +- Before reporting a bug, please search if someone else has has already reported it in the [existing issues](https://github.com/MarkBind/markbind/issues). +- Is your bug from the current version or an older version of MarkBind? What OS are you on? Tell us about your environment, for example, the MarkBind version you are on. +- What did you do? What did you expect to happen? What actually happened? + - Include things such the actual MarkBind code causing the issue, the steps for reproduction, the raw output, and what you expect instead can help us in diagnosing the issue quicker + - You are also encouraged to submit a PR that reproduces this in `test/functional/test_site/bugs/`. + +Please do not submit personal support requests (eg: "How do I use X?") as bugs. Instead, feel free to [submit a blank issue](https://github.com/MarkBind/markbind/issues/new) to our issue tracker with a label of question. + +### How to request a feature + +We welcome suggestions to improve MarkBind as well. To do so, you can request for new features or enhancements to existing features in our [issue tracker](https://github.com/MarkBind/markbind/issues), following the guidelines below. This helps us in undestanding your request. + +- Before requesting a new feature, please search if someone else has has already requested for it in the [existing issues](https://github.com/MarkBind/markbind/issues). +- Is your request related to a problem? Provide a clear and concise description of what the problem is. + Eg: I have an issue when [...] +- Describe the solution you'd like. Provide a clear and concise description of what you want to happen. +- Describe alternatives you've considered. Let us know about other solutions you've tried or researched. +- You can also share some additional context, anything else that you can add about the proposal. + +### First issues for contributors + +Unsure where to begin contributing to MarkBind? + +We recommend that you start off by visiting the [Getting Started](https://markbind.org/userGuide/gettingStarted.html) section in the User Guide and try out MarkBind as a user. Exploring and understanding the various features it provides. + +If you have not done so yet, we also recommend visiting the [Developer Guide]({{baseurl}}/devGuide/index.html) to learn about the [structure of the project]({{baseurl}}/devGuide/index.html#project-structure), how to set up the [developer environment]({{baseurl}}/devGuide/index.html#development-process), and how to run [tests]({{baseurl}}/devGuide/devGuide.html#testing). + +When you're ready, you can start by looking through these issues marked good first issue. + +If you have any questions, be it regarding MarkBind or our workflow, feel free to [submit a blank issue](https://github.com/MarkBind/markbind/issues/new) to our issue tracker with a label of question. + +### How to make Pull Requests to submit changes? + +Please follow the steps to have your contribution considered by the maintainers: + +1. Follow all the instructions in the pull request [template](https://github.com/MarkBind/markbind/blob/master/.github/PULL_REQUEST_TEMPLATE), the same template is also given to you when you submit a new Pull Request. +2. After you submit your pull request, verify that all [status checks](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-status-checks) are passing +3. You can then [request for a review](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) + - Not sure who to ask a review from? A good rule of thumb is to check recently [merged](https://github.com/MarkBind/markbind/pulls?q=is%3Apr+is%3Aclosed) or [approved](https://github.com/MarkBind/markbind/pulls?q=is%3Aopen+is%3Apr+review%3Aapproved) pull requests, and see who the reviewers are. It's likely that they are currently active and willing to review your pull request as well! + +Reviewer(s) may request additional changes from you in terms of implementation, design, tests, style, or other changes before your pull request is finally approved. \ No newline at end of file diff --git a/docs/devGuide/contributing/code-of-conduct.md b/docs/devGuide/contributing/code-of-conduct.md new file mode 100644 index 0000000000..077413c21d --- /dev/null +++ b/docs/devGuide/contributing/code-of-conduct.md @@ -0,0 +1,82 @@ + + title: "Code of Conduct" + layout: devGuide + pageNav: default + + +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at markbind@comp.nus.edu.sg. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff --git a/docs/site.json b/docs/site.json index 7b81b4f2f1..a35fc61d62 100644 --- a/docs/site.json +++ b/docs/site.json @@ -4,7 +4,7 @@ "titlePrefix": "MarkBind", "pages": [ { - "glob": ["**/*.mbd", "*.md", "userGuide/*.md", "devGuide/*.md"] + "glob": ["**/*.mbd", "*.md", "userGuide/*.md", "devGuide/*.md", "devGuide/*/*.md"] }, { "src": [