From cf55042645bae926b2d197293522fe9fdaad5c4c Mon Sep 17 00:00:00 2001 From: verena <9377970+vpchung@users.noreply.github.com> Date: Tue, 23 Jan 2024 23:08:52 +0000 Subject: [PATCH] unarchive contribution-related docs --- docs/contributions/bug-report.md | 8 +++ docs/contributions/guidelines.md | 104 +++++++++++++++++++++++++++++++ docs/contributions/overview.md | 14 +++++ 3 files changed, 126 insertions(+) create mode 100644 docs/contributions/bug-report.md create mode 100644 docs/contributions/guidelines.md create mode 100644 docs/contributions/overview.md diff --git a/docs/contributions/bug-report.md b/docs/contributions/bug-report.md new file mode 100644 index 0000000000..788de09327 --- /dev/null +++ b/docs/contributions/bug-report.md @@ -0,0 +1,8 @@ +Issues should be used to report problems with this project, request a new feature, or to discuss +potential changes before a pull request (PR) is created. When you create a new issue, a template +will be loaded that will guide you through collecting and providing the information we need to +investigate. + +If you find an issue that addresses the problem you're having, please add your own reproduction +information to the existing issue rather than creating a new one. Adding a reaction can also help +be indicating to our maintainers that a particular problem is affecting more than just the reporter. diff --git a/docs/contributions/guidelines.md b/docs/contributions/guidelines.md new file mode 100644 index 0000000000..95c37825c8 --- /dev/null +++ b/docs/contributions/guidelines.md @@ -0,0 +1,104 @@ +PRs to our repositories are always welcome and can be a quick way to get your +fix or improvement slated for the next release. In general, PRs should: + +- Only fix/add the functionality in question **OR** address wide-spread + whitespace/style issues, not both. +- Add unit or integration tests for fixed or changed functionality (if a test + suite already exists). +- Address a single concern in the least number of changed lines as possible. +- Include documentation in the repo or on our [docs site]. +- Be accompanied by a complete Pull Request template (loaded automatically when + a PR is created). + +For changes that address core functionality or would require breaking changes +(e.g. a major release), it's best to open an Issue to discuss your proposal +first. This is not required but can save time creating and reviewing changes. + +In general, we follow the [Forking Workflow]: + +1. Fork the repository to your own Github account +2. Clone the project to your machine +3. Create a branch locally with a succinct but descriptive name + + git checkout -b <new-branch> main + +4. Commit changes to the branch +5. Following any formatting and testing guidelines specific to this repo +6. Push changes to your fork +7. Open a PR in our repository and follow the PR template so that we can + efficiently review the changes. + +We recommend that you add this repository as an [upstream remote] to your local +git repository so that you can fetch the latest updates. + +```console +$ git remote add upstream https://github.com/Sage-Bionetworks/sage-monorepo.git +$ git remote -v +> ... +> upstream https://github.com/Sage-Bionetworks/sage-monorepo.git (fetch) +> upstream https://github.com/Sage-Bionetworks/sage-monorepo.git (push) +``` + +On your local machine make sure you have the latest version of the `main` branch +from this upstream repository: + +```console +git checkout main +git fetch upstream +git rebase upstream/main +``` + +### Setup Development Environment + +This project relies on Node tools and project-specific commands defined in +[package.json] to streamline the development and testing. The command below will +install the required development tools. + +Source `dev-env.sh`. + + . dev-env.sh + +Prepare the development environment. + + openchallenges-prepare + +### Linting + +Lint all the projects. + + yarn lint + +### Testing + +Build and test all the projects. + +```console +yarn build +yarn test +``` + +### Start the OpenChallenges + +Start the web app and its dependencies (API, API database). + + yarn start + +## Release Procedure + +Maintainers are required to follow the procedure below when creating a new +release. + +TBA + +## Getting Help + +Join us on the XXX and post your question to the channel that best matches the +topic of your request. + + + +[upstream remote]: https://help.github.com/en/articles/configuring-a-remote-for-a-fork +[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/ +[Forking Workflow]: https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow +[package.json]: ../package.json +[README.md]: ../README.md diff --git a/docs/contributions/overview.md b/docs/contributions/overview.md new file mode 100644 index 0000000000..c6f8ce706b --- /dev/null +++ b/docs/contributions/overview.md @@ -0,0 +1,14 @@ +Thank you contributing to the Sage Monorepo! We welcome any and all feedback, ideas, and +suggestions. + +Contributions can be made via issues and pull eequests (PRs). + +* [Reporting a bug](/bug-report) +* [Adding a feature](/contributing) + + +### Code of Conduct + +We take our open source community seriously and hold ourselves and other contributors to high +standards of communication. By participating and contributing to this project, you agree to uphold +our [Code of Conduct](https://github.com/Sage-Bionetworks/sage-monorepo/blob/main/CODE_OF_CONDUCT.md). \ No newline at end of file