diff --git a/content/en/docs/guideForClient/Recommandation/community.md b/content/en/docs/guideForClient/Recommandation/community.md index ed49f38..21c9de2 100644 --- a/content/en/docs/guideForClient/Recommandation/community.md +++ b/content/en/docs/guideForClient/Recommandation/community.md @@ -12,23 +12,28 @@ menu: weight: 100 toc: true --- + ### Slack + - Slack is an enterprise messaging app that connects people and information. - Slack can improve how organizations communicate by bringing people together and running a unified team. - You can communicate with your team, as well as create and use channels as a community or for various purposes. -{{< alert icon="πŸ‘‰" >}} Want to try Slack as a community or learn more about Slack? [Quickstart for Slack](https://slack.com/intl/en-gb/help/articles/360059928654-How-to-use-Slack--your-quick-start-guide) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} Want to try Slack as a community or learn more about Slack? [Quickstart for Slack](https://slack.com/intl/en-gb/help/articles/360059928654-How-to-use-Slack--your-quick-start-guide) {{< /alert >}} ### Connect Slack and GitHub + - In addition, you can connect Slack and GitHub, so you can receive notifications such as GitHub Puliquet and Issue. -{{< alert icon="πŸ‘‰" >}} If you want to connect Slack and GitHub? [How to connect Slack to GitHub](https://slack.github.com/) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} If you want to connect Slack and GitHub? [How to connect Slack to GitHub](https://slack.github.com/) {{< /alert >}} ### Discord + - Discord is a place where you can feel a bond by belonging to the community and more easily, hang out and talk every day. - Discord servers are divided into topic-based channels, so you can cooperate, share, and talk comfortably in a group room without congestion. - You are given administrative tools that can be run by any community, and you can also specify the members' permissions. -{{< alert icon="πŸ‘‰" >}} Want to try Discord as a community or learn more about Discord? [Discord Guide for Beginners](https://support.discord.com/hc/ko/articles/360045138571-Discord-%EC%B4%88%EB%B3%B4%EC%9E%90%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%95%88%EB%82%B4%EC%84%9C) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} Want to try Discord as a community or learn more about Discord? [Discord Guide for Beginners](https://support.discord.com/hc/ko/articles/360045138571-Discord-%EC%B4%88%EB%B3%B4%EC%9E%90%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%95%88%EB%82%B4%EC%84%9C) {{< /alert >}} ### GitHub Discussion + - GitHub Discussions is a joint communication forum for the community around open source or internal projects. - Community members can ask questions, answer questions, share updates, have open conversations, and follow decisions that affect how the community works. -{{< alert icon="πŸ‘‰" >}} Want to try GitHub Discussions as a community or learn more about GitHub Discussions? [Quickstart for GitHub Discussions](https://docs.github.com/en/discussions/quickstart) {{< /alert >}} \ No newline at end of file + {{< alert icon="πŸ‘‰" >}} Want to try GitHub Discussions as a community or learn more about GitHub Discussions? [Quickstart for GitHub Discussions](https://docs.github.com/en/discussions/quickstart) {{< /alert >}} diff --git a/content/en/docs/guideForClient/Recommandation/tool.md b/content/en/docs/guideForClient/Recommandation/tool.md index cf38b88..4acb2cc 100644 --- a/content/en/docs/guideForClient/Recommandation/tool.md +++ b/content/en/docs/guideForClient/Recommandation/tool.md @@ -12,16 +12,20 @@ menu: weight: 120 toc: true --- + ### Sonar Cloud + - Sonar Cloud is a tool that easily integrates into the cloud DevOps platform and uses code review tools that extend CI/CD workflows when teams want to deliver clean code consistently and efficiently. -{{< alert icon="πŸ‘‰" >}} What is SonarCloud? [Sonarcloud Document](https://docs.sonarcloud.io/) {{< /alert >}} -{{< alert icon="πŸ‘‰" >}} How to use SonarCloud? [Quickstart for Slack](https://www.sonarsource.com/products/sonarcloud/?gads_campaign=SC-Hroi-Brand&gads_ad_group=SonarCloud&gads_keyword=sonarcloud&gclid=CjwKCAjw3dCnBhBCEiwAVvLcuw2gx3ghQq_AFOWEksB18wXgY-66606OoWOKfSpEnAmJ-RbUW-FAxRoC8P8QAvD_BwE) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} What is SonarCloud? [Sonarcloud Document](https://docs.sonarcloud.io/) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} How to use SonarCloud? [Quickstart for Slack](https://www.sonarsource.com/products/sonarcloud/?gads_campaign=SC-Hroi-Brand&gads_ad_group=SonarCloud&gads_keyword=sonarcloud&gclid=CjwKCAjw3dCnBhBCEiwAVvLcuw2gx3ghQq_AFOWEksB18wXgY-66606OoWOKfSpEnAmJ-RbUW-FAxRoC8P8QAvD_BwE) {{< /alert >}} ### GitHub Actions + - Automate, customize, and run software development workflows directly from the repository using GitHub Actions. You can discover, create, and share tasks to accomplish the desired tasks, including CI/CD, and combine them in fully customized workflows. -{{< alert icon="πŸ‘‰" >}} How to use GitHub Actions? [Quickstart for GitHub Actions](https://docs.github.com/en/actions/quickstart) {{< /alert >}} + {{< alert icon="πŸ‘‰" >}} How to use GitHub Actions? [Quickstart for GitHub Actions](https://docs.github.com/en/actions/quickstart) {{< /alert >}} ### FOSSA + - FOSSA protects code by mitigating open source risk. - Software protection against open source risk management and license violations, vulnerabilities, and supply chain threats. @@ -32,5 +36,6 @@ toc: true {{< alert icon="πŸ‘‰" >}} How to use FOSSA? [Quickstart for FOSSA](https://docs.fossa.com/docs/getting-started) {{< /alert >}} ### Dependabot + - Dependabot creates Dependabot alerts when a known vulnerability is detected in the dependencies used by the project. -{{< alert icon="πŸ‘‰" >}} How to use Dependabot? [Quickstart for GitHub Actions](https://docs.github.com/ko/enterprise-server@3.6/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions) {{< /alert >}} \ No newline at end of file + {{< alert icon="πŸ‘‰" >}} How to use Dependabot? [Quickstart for GitHub Actions](https://docs.github.com/ko/enterprise-server@3.6/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions) {{< /alert >}} diff --git a/content/en/docs/guideForClient/aboutcommunity.md b/content/en/docs/guideForClient/aboutcommunity.md index 3507513..2ffc29a 100644 --- a/content/en/docs/guideForClient/aboutcommunity.md +++ b/content/en/docs/guideForClient/aboutcommunity.md @@ -12,24 +12,29 @@ menu: weight: 160 toc: true --- + _Community checks whether Description, Code of Conduct, Discussion, and License are enabled._ ### Description + **What is Description?** This is a explanation used in Repository, which is the first item that is visible to the user, and is a concise description that best describes the topic. ### Code of Conduct + **What is Code of Conduct?** A code of conduct is a document that establishes expectations for behavior for your project’s participants. ### Discussion + **What is Discussion?** Collaborative communication forum for the community around an open source or internal project. ### License + **What is License?** -Open source licenses are licenses that comply with the Open Source Definition – in brief, they allow software to be freely used, modified, and shared. \ No newline at end of file +Open source licenses are licenses that comply with the Open Source Definition – in brief, they allow software to be freely used, modified, and shared. diff --git a/content/en/docs/guideForClient/aboutsecurity.md b/content/en/docs/guideForClient/aboutsecurity.md index 75edd1a..3162c64 100644 --- a/content/en/docs/guideForClient/aboutsecurity.md +++ b/content/en/docs/guideForClient/aboutsecurity.md @@ -12,23 +12,29 @@ menu: weight: 140 toc: true --- + _Security checks whether Security Policy, Dependabot, CodeQL, Secret Scanning is enabled._ + ### Security Policy + **What is Security Policy?** You can add a security policy to the repository to provide guidance on how to report security vulnerabilities in your project. ### Dependabot + **What is Dependabot?** Dependabot creates Dependabot alerts when a known vulnerability is detected in the dependencies used by the project. ### CodeQL + **What is CodeQL?** CodeQL can be used to identify vulnerabilities and errors in code. The result is displayed as code scanning warning in GitHub. ### Secret Scanning + **What is Secret Scanning?** GitHub checks the repository for known types of secrets to prevent inadvertently committed secrets from being used for fraud. diff --git a/content/en/docs/guideForClient/abouttemplate.md b/content/en/docs/guideForClient/abouttemplate.md index f1c9578..b543b2f 100644 --- a/content/en/docs/guideForClient/abouttemplate.md +++ b/content/en/docs/guideForClient/abouttemplate.md @@ -12,9 +12,11 @@ menu: weight: 120 toc: true --- + _Template checks the presence or absence of Pull-Request Template, Issue Template, README.md, Contributing.md._ ### Pull-Request Template + **What is Pull-Request Template?** Pull-Request Template (PR Template) is a template of a PR body that is entered when pr is performed. This standardizes the description format so that the code can be easily understood and looks over the parts that need to be checked during PR. @@ -22,11 +24,13 @@ Pull-Request Template (PR Template) is a template of a PR body that is entered w **What Open-Set-Go has to offer?** Various Pull-Request Templates currently used by real open-source projects sorted by star. + - Use the template as it is. - Use the markdown editor to modify and use the template to suit you. - Create new ones to suit your needs with the markdown editor. ### Issue Template + **What is Issue Template?** Issue templates are summarized and recorded for use in tracking issues or issues that arise during the project. @@ -34,10 +38,12 @@ Issue templates are summarized and recorded for use in tracking issues or issues **What Open-Set-Go has to offer?** Provide appropriate Issue Templates for different situations. You can write the name and description of the issue template to suit you, and you can also set the title if you want. In addition, you can add as many issue templates as you want. + - Use the template as it is. - Create new ones to suit your needs with the markdown editor. ### README.md + **What is README.md?** README.md is the first document to be viewed in the repository and describes the project. You have information about other files contained in a directory or compressed file. @@ -45,6 +51,7 @@ README.md is the first document to be viewed in the repository and describes the **What Open-Set-Go has to offer?** Various README.md currently used by real open-source projects sorted by star. Templates can be provided separately by type, such as title and description, so that users can use them in combination as they want. + - Use the template as it is. - Use the markdown editor to modify and use the template to suit you. - Use a combination of the types you want to modify the text. @@ -59,7 +66,8 @@ CONTRIBUTING.md is a document that specifies information for contributors. This **What Open-Set-Go has to offer?** Various Contributing.md currently used by real open-source projects sorted by star. Templates can be provided separately by type, such as title and description, so that users can use them in combination as they want. + - Use the template as it is. - Use the markdown editor to modify and use the template to suit you. - Use a combination of the types you want to modify the text. -- Create new ones to suit your needs with the markdown editor. \ No newline at end of file +- Create new ones to suit your needs with the markdown editor. diff --git a/content/en/docs/guideForClient/tutorial.md b/content/en/docs/guideForClient/tutorial.md index 92514ee..605aa97 100644 --- a/content/en/docs/guideForClient/tutorial.md +++ b/content/en/docs/guideForClient/tutorial.md @@ -12,57 +12,61 @@ menu: weight: 100 toc: true --- + ### Default Settings -**0. GitHub OAuth Sign Up/Login** + +GitHub OAuth Sign Up/Login You can check essential rights and choose organizations you want to use in Open-Set-Go. ### Start -**1. Repository Settings** + +1.**Repository Settings** Set Repository Name (Validation Check), Description, the framework, .gitignore. -**2. License Settings** +2.**License Settings** Allows permission, condition, limitation comparison and selection of licenses provided by Github. -**3. Pull-Request Template Settings** +3.**Pull-Request Template Settings** Sorting and providing various pull-request templates in githubstar order, selecting or modifying the templates to suit your needs, or creating new ones. -**4. Issue Template Settings** +4.**Issue Template Settings** Issue templates are provided by type, and users can select, and create the same as pull-request templates. Each Issue template can be set as title and description, and can be added as needed. -**5. CONTRIBUTING.md Settings** +5.**CONTRIBUTING.md Settings** Sorting and providing various CONTRIBUTING.md templates in githubstar order, enabling you to select or modify templates to suit your needs. Select templates categorized by type to create templates that fit your needs. -**6. README.md Settings** +6.**README.md Settings** Sorting and providing various README.md templates in githubstar order, enabling you to select or modify templates to suit your needs. Select templates categorized by type to create templates that fit your needs. -**7. Complete Project Creation** +7.**Complete Project Creation** -When you complete the creation of the project, you send mail to which the documentations are connected. -In the repository that you created, the documents you set are committed and pushed. +When you complete the creation of the project, you send mail to which the documentations are connected. In the repository that you created, the documents you set are committed and pushed. ### Review -**1. Select a repository** + +1.**Select a repository** When you proceed with yourself or membership/login, choose a repository that has more than push permission from the authorized organization. -**2. Project Operational Assessment** +2.**Project Operational Assessment** + Divided into templates, communities, and security, the parts that have not been evaluated are marked in red circles. - Template checks the presence or absence of Pull-Request Template, Issue Template, README.md, Contributing.md. [More about Template](https://docs.open-set-go.com/docs/guideForClient/abouttemplate/) - Community checks whether Description, Code of Conduct, Discussion, and License are enabled. [More about Community](https://docs.open-set-go.com/docs/guideForClient/aboutcommunity/) - Security checks whether Security Policy, Dependabot, CodeQL, Secret Scanning is enabled. [More about Security](https://docs.open-set-go.com/docs/guideForClient/aboutsecurity/) -**3. Project Operational Assessment** +3.**Project Operational Assessment** If you want to fill the gaps in the template part, you can select, modify, and create templates as in the start function by clicking on each Pull-Request Template, Issue Template, README.md , and Contributing.md. -**4. Create Pull Request** +4.**Create Pull Request** -If you make a new template through number 3, make a Pull Request. \ No newline at end of file +If you make a new template through number 3, make a Pull Request. diff --git a/content/en/docs/guideForDevelopment/apiSpec.md b/content/en/docs/guideForDevelopment/apiSpec.md index 9edfd17..7bd2f70 100644 --- a/content/en/docs/guideForDevelopment/apiSpec.md +++ b/content/en/docs/guideForDevelopment/apiSpec.md @@ -1,42 +1,43 @@ ---- -title: "API Spec" -description: "Show our Open-Set-Go Server's API specifications." -lead: "Show our Open-Set-Go Server's API specifications." -date: 2020-10-13T15:21:01+02:00 -lastmod: 2020-10-13T15:21:01+02:00 -draft: false -images: [] -menu: - docs: - parent: "guideForDevelopment" -weight: 150 -toc: true ---- - -| Method | Request Path | Request Body | Response Body | Description | -| ------ | ------------------------------------ | ----------------------------------------------- | ------------------------------------ | ------------------------------------------- | -| POST | /auth/github-login?code=\ | | | GitHub OAuth Login | -| POST | /auth/github-logout | only need cookies | | Remove Cookies | -| GET | /user/profile | only need cookies | [Response Body](#userprofile) | User Info for user profile | -| GET | /user/grantedInfo | only need cookies | [Response Body](#usergrantedinfo) | userInfo with org | -| POST | /repo | cookies + [Request Body](#repocheckduplication) | Status will send(NOT FOUND or OK) | userInfo with org | -| POST | /repo/checkDuplication | cookies + [Request Body](#repo) | true/false(Boolean) | check repository is duplicate | -| POST | /mail | only need cookies | Status will send(NOT FOUND or OK) | send mail to user(after respository create) | -| POST | /file | cookies + [Request Body](#file) | Status will send(NOT FOUND or OK) | upload file to repository | -| GET | /file/supportedEnv | | [Response Body](#filesupportedenv) | give supportedEnv | -| GET | /file/license | | [Response Body](#filelicense) | get license information | -| GET | /file/pr | | [Response Body](#filepr) | get prs information | -| GET | /file/pr/\ | | [Response Body](#fileprid) | get pr information only id | -| GET | /file/contributing | | [Response Body](#filecontributing) | get contributings information | -| GET | /file/contributing/\ | | [Response Body](#filecontributingid) | get contributings information only id | -| GET | /file/readme | | [Response Body](#filereadme) | get readmes information | -| GET | /file/readme/\ | | [Response Body](#filereadmeid) | get readmes information only id | +# Index + +- [auth module](#auth-module) +- [user module](#user-module) +- [repo module](#repo-module) +- [mail module](#mail-module) +- [file module](#file-module) + - [file/license module](#filelicense-module) + - [file/pr module](#filepr-module) + - [file/issue module](#fileissue-module) + - [file/contributing module](#filecontributing-module) + - [file/readme module](#filereadme-module) +- [review module](#review-module) + - [review/file module](#reviewfile-module) + +## Auth Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ---------------------------------------- | ----------------- | ------------- | ------------------ | +| POST | /auth/github-login?code=\<**authCode**\> | | | GitHub OAuth Login | +| POST | /auth/github-logout | only need cookies | | Remove Cookies | + +> πŸ—’οΈ note:
+> Auth Module is based on GitHub OAuth Apps!
+> You can get your testing **authCode** at our [GitHub OAuth Apps](https://github.com/login/oauth/authorize?client_id=39ae041e1cd34ce4723e&redirect_uri=https://localhost:3000/login&scope=repo,write:org,read:user,user:email)
+> Request of `/auth/github-login?code` give you cookies that can access every request that need cookies + +## User Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ----------------- | ----------------- | --------------------------------- | -------------------------- | +| GET | /user/profile | only need cookies | [Response Body](#userprofile) | User Info for user profile | +| GET | /user/grantedInfo | only need cookies | [Response Body](#usergrantedinfo) | userInfo with org | ### /user/profile #### Response Body ```json +// case 1 [200] { "id": "ymw0407", "name": "Yun Min Woo", @@ -49,6 +50,7 @@ toc: true #### Response Body ```json +// case 1 [200] { "id": "ymw0407", "avatar": "https://avatars.githubusercontent.com/u/77202633?v=4", @@ -69,53 +71,227 @@ toc: true } ``` +## Repo Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ---------------------- | ----------------------------------------------- | -------------------------------------- | --------------------------------------------- | +| POST | /repo | cookies + [Request Body](#repo) | [Response Body](#repo) | creating repository with description | +| POST | /repo/checkDuplication | cookies + [Request Body](#repocheckduplication) | [Response Body](#repocheckduplication) | check repository is duplicate | +| GET | /repo/getPulbicRepo | only need cookies | [Response Body](#repogetpublicrepo) | get public repository that granted | +| POST | /repo/getRepoDetails | cookies + [Request Body](#repogetrepodetails) | [Response Body](#repogetrepodetails) | get detail information of specific repository | + ### /repo #### Request Body ```json +// case 1: Normal Case -> creating repository successfully [200] +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go_test", + "description": "This is the test of creating repository with `/repo` POST Method" +} +// case 2: Worse Case -> already existing repository [404] { "owner": "AgainIoT", - "repoName": "test2", - "description": "test22" + "repoName": "Open-Set-Go_server", + "description": "This is the test of creating repository with `/repo` POST Method" } ``` +#### Response Body + +```json +// case 1: Normal Case -> creating repository successfully [200] +OK +// case 2: Worse Case -> already existing repository [404] +Not Found +``` + ### /repo/checkDuplication #### Request Body ```json +// case 1: creatable repository [201] { "owner": "AgainIoT", - "repoName": "Open-Set-Go" + "repoName": "Open-Set-Go_test" +} +// case 2: already existing repository [201] +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go_server" } ``` -### /file +#### Response Body + +```json +// case 1: creatable repository [201] +true +// case 2: already existing repository [201] +false +``` + +### /repo/getPulbicRepo + +#### Response Body + +```json +// case 1 [200] +[ + { + "owner": "ymw0407", + "avatar": "https://avatars.githubusercontent.com/u/77202633?v=4", + "repoName": [ + "0592006-03", + "2022ESWContest_webOS_3013", + "22_summer_bootcamp", + "adsfa", + "Algorithm", + "Backend-study", + "C-Snake-main", + "Everyones-Transfer_Main", + "GitBookPyQt", + "GitHub-Action-Study", + "GitHub-RestAPI", + "Go-gRPC-Study", + "grpc_client", + "KOSS-BootCamp-PyQt", + "mqtt-sensor-dummydata", + "OOP-Study-with-Java", + "Open-Set-Go", + "Open-Set-Go_server", + "productive-box", + "SoftwareProject2", + "terraform-provider-ncloud", + "testasdfasdf", + "WAMP_Study", + "ymw0407", + "ymw0407.github.io", + "YongMoon-Voluntary" + ] + }, + { + "owner": "AgainIoT", + "avatar": "https://avatars.githubusercontent.com/u/128156954?v=4", + "repoName": [ + ".github", + "Open-Set-Go", + "Open-Set-Go.io", + "Open-Set-Go_client", + "Open-Set-Go_server" + ] + } +] +``` + +### /repo/getRepoDetails #### Request Body ```json +// case 1 [201] { "owner": "AgainIoT", - "repoName": "Open-Set-Go", + "repoName": "Open-Set-Go_server" +} + +// case 2 [201] +{ + "owner": "ymw0407", + "repoName": "ymw0407" +} +``` + +#### Response Body + +```json +// case 1 [201] +{ + "owner": "AgainIoT", + "name": "Open-Set-Go_server", + "fullName": "AgainIoT/Open-Set-Go_server", + "repoURL": "https://github.com/AgainIoT/Open-Set-Go_server", + "description": "'Project Starting Toolkit' for OpenSource SW developers who can easily, quickly and conveniently start an Open Source project.", + "language": "TypeScript", + "star": 8, + "fork": 3 +} + +// case 2 [201] +{ + "owner": "ymw0407", + "name": "ymw0407", + "fullName": "ymw0407/ymw0407", + "repoURL": "https://github.com/ymw0407/ymw0407", + "description": null, + "language": null, + "star": 0, + "fork": 0 +} +``` + +## Mail Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ------------ | ----------------- | --------------------------------- | ------------------------------------------- | +| POST | /mail | only need cookies | Status will send(NOT FOUND or OK) | send mail to user(after respository create) | + +> πŸ—’οΈ note:
+> If the mail didn't come to the set primary mail account on GitHub, please take a look at the spam box! + +## File Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ------------------ | ------------------------------- | ---------------------------------- | ------------------------- | +| POST | /file | cookies + [Request Body](#file) | Status will send(NOT FOUND or OK) | upload file to repository | +| GET | /file/supportedEnv | | [Response Body](#filesupportedenv) | give supportedEnv | +| GET | /file/gitignore | | [Response Body](#filegitignore) | give gitgignore list | + +### /file + +#### Request Body + +```json +// case 1 [200] +{ + "owner": "ymw0407", + "repoName": "testasdfasdf", "language": "JavaScript(Node.js)", "framework": "Express.js", "gitignore": ["VisualStudioCode", "Linux"], "PRTemplate": "### markdown", - "IssueTemplate": [], // empty array required now + "IssueTemplate": [ + { + "type": "Bug_Report", + "content": "test" + }, + { + "type": "Feature_Request", + "content": "test22" + } + ], "contributingMd": "### contributing.md", "readmeMd": "### readme.md", - "license": "https://www.gnu.org/licenses/gpl-3.0.txt" + "license": "mit" } ``` +#### Response Body + +```json +// case 1 [200] +OK +``` + ### /file/supportedEnv -#### Request Body +#### Response Body ```json +// case 1 [200] [ { "language": "JavaScript(Node.js)", @@ -142,125 +318,128 @@ toc: true ] ``` -### /file/license +### /file/gitignore #### Response Body ```json [ { - "priority": 0, - "license": "Apache License 2.0", - "description": "A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.\n", - "conditions": { - "permissions": [ - "Commercial use", - "Modification", - "Distribution", - "Patent use", - "Private use" - ], - "limitations": ["Trademark use", "Liability", "Warranty"], - "conditions": ["License and copyright notice", "State changes"] - }, - "url": "https://www.apache.org/licenses/LICENSE-2.0.txt" - }, + "IDE": [ + "VisualStudioCode", + "Eclipse", + "WebStrom+all", + "GoLand+all", + "Intellij+all", + "JetBrains+all" + ], + "OS": ["Linux", "macOS", "Windows"], + "ETC": [ + "ElasticBeanstalk", + "SonarQube", + "OrCAD", + "Maven", + "MATLAB", + "JupyterNotebooks" + ] + } +] +``` + +## File/license Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ------------- | ----------------- | ----------------------------- | ----------------------- | +| GET | /file/license | only need cookies | [Response Body](#filelicense) | get license information | + +### /file/license + +#### Response Body + +```json +[ { - "priority": 1, - "license": "GNU GENERAL PUBLIC LICENSE v3.0", - "description": "Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.\n", - "conditions": { - "permissions": [ - "Commercial use", - "Modification", - "Distribution", - "Patent use", - "Private use" - ], - "limitations": ["Liability", "Warranty"], - "conditions": [ - "License and copyright notice", - "State changes", - "Disclose source", - "Same license" - ] - }, - "url": "https://www.gnu.org/licenses/gpl-3.0.txt" + "license": "apache-2.0", + "name": "Apache License 2.0", + "description": "A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.", + "permissions": [ + "commercial-use", + "modifications", + "distribution", + "patent-use", + "private-use" + ], + "conditions": ["include-copyright", "document-changes"], + "limitations": ["trademark-use", "liability", "warranty"], + "featured": true }, { - "priority": 2, - "license": "MIT License", - "description": "A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.\n", - "conditions": { - "permissions": [ - "Commercial use", - "Modification", - "Distribution", - "Patent use", - "Private use" - ], - "limitations": ["Liability", "Warranty"], - "conditions": ["License and copyright notice"] - }, - "url": "https://www.mit.edu/~amini/LICENSE.md" - } + "license": "mit", + "name": "MIT License", + "description": "A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.", + "permissions": [ + "commercial-use", + "modifications", + "distribution", + "private-use" + ], + "conditions": ["include-copyright"], + "limitations": ["liability", "warranty"], + "featured": true + } // ... more than 5 licenses ] ``` +## File/pr Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | --------------- | ------------------------ | ------------------------------ | -------------------------- | +| GET | /file/pr | [Request Query](#filepr) | [Response Body](#filepr) | get prs information | +| GET | /file/pr/\ | | [Response Body](#fileprid) | get pr information only id | +| GET | /file/pr/amount | | [Response Body](#filepramount) | get pr temlates amount | + ### /file/pr +#### Request Query + +```json +// case 1 - page=2, amount=3 -> 6 ~ 8 [200] +"http://localhost:8080/file/pr?page=2&amount=3" + +// case 2 - page=1 -> amount will be 20 -> 0 ~ 19 [200] +"http://localhost:8080/file/pr?page=1" +``` + #### Response Body ```json [ { "_id": "64f175c218eed0c9b21a2f2e", - "title": "preset1", "repoName": "AgainIoT/Open-Set-Go", "repoUrl": "https://github.com/AgainIoT/Open-Set-Go", - "content": "### Describe changes\n\n_Describe a summary of the changes and the related issue to communicate to the maintainers why we should accept this pull request._\n\n### Issue number or link\n\n### Types of changes\n\nWhat is the type of code change?\n_Put an `x` in the boxes that apply_\n\n- [ ] Bugfix (changes that resolve errors)\n- [ ] New feature (changes which adds functionality)\n- [ ] Breaking change (big changes that affect existing functionality)\n- [ ] Documentation Update\n\n### Checklist\n\n_Put an `x` in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code._\n\n- [ ] I have read the \"README.md\"\n- [ ] My code follows the style guidelines of this project\n- [ ] My changes generate no new warnings\n- [ ] Lint and unit tests pass locally with my changes\n- [ ] I have added tests that prove my fix is effective or that my feature works\n- [ ] I have added necessary documentation\n- [ ] Any dependent changes have been merged and published in downstream modules\n\n### Further comments\n\n_Please let me know if there's anything else to explain_" + "star": 26 }, { "_id": "64f2fedb2a1079c11a9a646e", "title": "simple-preset", "repoName": "michaelkolesidis/javascript-software-synthesizer", "repoUrl": "https://github.com/michaelkolesidis/javascript-software-synthesizer", - "content": "### Describe your changes\n\n### Issue ticket number and link\n\n### Checklist before requesting a review\n\n- [ ] I have performed a self-review of my code\n- [ ] If it is a core feature, I have added thorough tests.\n- [ ] Do we need to implement analytics?\n- [ ] Will this be part of a product update? If yes, please write one phrase about this update.\n\nThanks for contributing to JSS-01 | JavaScript Software Synthesizer!" + "star": 20 }, { "_id": "64f324482a1079c11a9a6470", "title": "detail-preset", "repoName": "OpenRoberta/openroberta-lab", "repoUrl": "https://github.com/OpenRoberta/openroberta-lab", - "content": "## Description\n\nPlease include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required\nfor this change.\n\nPlease *never* include a issue number (as #NUMBER) taken from our github issue tracker in the pull request. If the pull request is changed again and again, this\nfloods the issue with irrelevant commit numbers. Of course the *pure* NUMBER can be used for documentation purposes. If the pull request is accepted, the issue\nnumber will be added during that step.\n\n### Type of change\n\nPlease delete options that are not relevant.\n\n- [ ] Bug fix (non-breaking change which fixes an issue)\n- [ ] New feature (non-breaking change which adds functionality)\n- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)\n- [ ] This change requires a documentation update\n\n## How Has This Been Tested?\n\nPlease describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test\nconfiguration\n\n**Test Configuration**:\n\n* Firmware version:\n* Hardware:\n* Toolchain:\n* SDK:\n* OS:\n\n## Checklist:\n\n- [ ] My code follows the style guidelines of this project\n- [ ] I have performed a self-review of my own code\n- [ ] I have commented my code, particularly in hard-to-understand areas\n- [ ] I have made corresponding changes to the documentation\n- [ ] My changes generate no new warnings\n- [ ] I have added tests that prove my fix is effective or that my feature works\n- [ ] New and existing unit tests pass locally with my changes\n- [ ] Any dependent changes have been merged and published in downstream modules" + "star": 100000 }, { "_id": "64f326072a1079c11a9a6471", "title": "comment-preset", "repoName": "inversify/InversifyJS", "repoUrl": "https://github.com/inversify/InversifyJS", - "content": "\n\n### Description\n\n\n\n### Related Issue\n\n\n\n\n\n\n### Motivation and Context\n\n\n\n### How Has This Been Tested?\n\n\n\n\n\n### Types of changes\n\n\n\n- [ ] Updated docs / Refactor code / Added a tests case (non-breaking change)\n- [ ] Bug fix (non-breaking change which fixes an issue)\n- [ ] New feature (non-breaking change which adds functionality)\n- [ ] Breaking change (fix or feature that would cause existing functionality to change)\n\n### Checklist:\n\n\n\n\n- [ ] My code follows the code style of this project.\n- [ ] My change requires a change to the documentation.\n- [ ] I have updated the documentation accordingly.\n- [ ] I have read the **CONTRIBUTING** document.\n- [ ] I have added tests to cover my changes.\n- [ ] All new and existing tests passed.\n- [ ] I have updated the changelog." - }, - { - "_id": "64f327232a1079c11a9a6472", - "title": "opensource-preset", - "repoName": "josephguillaume/hydromad", - "repoUrl": "https://github.com/josephguillaume/hydromad", - "content": "#### All Submissions:\n\n* [ ] Have you followed the guidelines in our **CONTRIBUTING** document?\n* [ ] Have you checked to ensure there aren't other open [Pull Requests](../../../pulls) for the same update/change?\n\n\n\nCloses #xxxxx\n\n\n\n\n\n\n\n### Types of changes\n\n- [ ] Bug fix (non-breaking change which fixes an issue. List the bug ID if applicable)\n- [ ] New feature (non-breaking change which adds functionality)\n- [ ] Breaking change (fix or feature that would cause existing core functionality to change) \n\n\n#### New Feature Submissions checklist:\n\n\n1. [ ] Have you ensured there are no conflicts with major packages (e.g. tidyverse, MASS) or base R packages?\n2. [ ] Does your new feature require documentation, and if so, have you updated the documentation?\n3. [ ] Have you added tests for your features, and do your features pass all tests?\n4. [ ] Have you linted your code with lintr locally prior to submission?\n5. [ ] Have you styled your code with styler locally prior to submission?\n6. [ ] Have you [benchmarked](https://www.alexejgossmann.com/benchmarking_r/) the performance of your code if applicable (e.g. with microbenchmark)?\n7. [ ] Does your new feature comply with existing model APIs (e.g. for models, optimisation algorithms, objective functions)?\n\n\n#### Changes to Core Features:\n\n\n* [ ] Have you added an explanation of what your changes do and why you'd like us to include them?\n* [ ] Have you added tests for your core features and do your core features pass all tests?\n* [ ] Have you successfully run tests with your changes locally?\n* [ ] Does your code run on all major platforms (Windows, macOS, Linux)?\n* [ ] Have you demonstrated backwards compatibility and compatibility with the current development version, or discussed a potential break in backwards compatibility?\n* [ ] Have you updated the package vignettes? " - }, - { - "_id": "64f327a82a1079c11a9a6473", - "title": "todo-preset", - "repoName": "getlago/lago", - "repoUrl": "https://github.com/getlago/lago", - "content": "### Pull Request template\n\nPlease, go through these steps before you submit a PR.\n\n1. Make sure that your PR is not a duplicate.\n2. If not, then make sure that:\n\n a. You have done your changes in a separate branch. Branches MUST have descriptive names that start with either the `fix/` or `feature/` prefixes. Good examples are: `fix/signin-issue` or `feature/issue-templates`.\n\n b. You have a descriptive commit message with a short title (first line).\n\n c. You have only one commit (if not, squash them into one commit).\n\n d. `npm test` doesn't throw any error. If it does, fix them first and amend your commit (`git commit --amend`).\n\n3. **After** these steps, you're ready to open a pull request.\n\n a. Give a descriptive title to your PR.\n\n b. Describe your changes.\n\n c. Put `closes #XXXX` in your comment to auto-close the issue that your PR fixes (if such).\n\n d. Add the corresponding labels to your pull request (ex: feature, improvement, bug...)\n\nIMPORTANT: Please review the [CONTRIBUTING.md](../CONTRIBUTING.md) file for detailed contributing guidelines.\n\n**PLEASE REMOVE THIS TEMPLATE BEFORE SUBMITTING**" - }, - { - "_id": "64f3285f2a1079c11a9a6474", - "title": "checklist-preset", - "repoName": "idyll-lang/idyll", - "repoUrl": "https://github.com/idyll-lang/idyll", - "content": "- **Please check if the PR fulfills these requirements**\n\n* [ ] Tests for the changes have been added (for bug fixes / features)\n* [ ] Docs have been added / updated (for bug fixes / features)\n\n- **What kind of change does this PR introduce?** (Bug fix, feature, docs update, ...)\n\n* **What is the current behavior?** (You can also link to an open issue here)\n\n- **What is the new behavior (if this is a feature change)?**\n\n* **Does this PR introduce a breaking change?** (What changes might users need to make in their application due to this PR?)\n\n- **Other information**:" + "star": 100012 } ] ``` @@ -287,40 +466,305 @@ PR?) - **Other information**: ``` +### /file/pr/amount + +#### Response Body + +```json +80 +``` + +## File/issue Module + +| Method | Request Path | Request | Response Body | Description | +| ------ | ----------------- | ------- | ----------------------------- | --------------------------- | +| GET | /file/issue | | [Response Body](#fileissue) | get issue templates | +| GET | /file/issue/\ | | [Response Body](#fileissueid) | get issue templates content | + +### /file/issue + +#### Response Body + +```json +[ + { + "type": "Bug_Report", + "templates": [ + { + "id": "64ec8e19ad1cef842264f78c", + "title": "Bug Report for Web Service" + }, + { + "id": "652893f822ee43f98993b51f", + "title": "Bug Report for Web Service2" + } + ] + }, + { + "type": "Feature_Request", + "templates": [ + { + "id": "6528934c22ee43f98993b51d", + "title": "Feature Request for Web Service" + } + ] + }, + { + "type": "Documentation_Issue", + "templates": [ + { + "id": "6528938422ee43f98993b51e", + "title": "Documentation Issue for Web Service" + } + ] + } +] +``` + +### /file/issue/\ + +#### Response Body + +```json +{ + "content": "body:\n - type: dropdown\n id: browsers\n attributes:\n label: \"Browsers\"\n description: What browsers are you seeing the problem on?\n multiple: true\n options:\n - Firefox\n - Chrome\n - Safari\n - Microsoft Edge\n - Opera\n validations:\n required: true\n\n - type: dropdown\n id: os\n attributes:\n label: \"OS\"\n description: What is the impacted environment?\n multiple: true\n options:\n - Windows\n - Linux\n - Mac\n validations:\n required: true\n\n - type: textarea\n id: description\n attributes:\n label: \"Description\"\n description: Enter an explicit description of your issue and explain the bug briefly and clearly.\n validations:\n required: true\n\n - type: textarea\n id: reprod-steps\n attributes:\n label: \"Reproduction Steps\"\n description: Explain your issue step by step.\n render: bash\n validations:\n required: true\n\n - type: textarea\n id: solution\n attributes:\n label: \"Solutions\"\n description: If you have a solution, please share it.\n render: bash\n validations:\n required: false\n\n - type: textarea\n id: screenshot\n attributes:\n label: \"Screenshots\"\n description: Add screenshots to help explain your problem.\n value: |\n ![DESCRIPTION](LINK.png)\n render: bash\n validations:\n required: false", + "image": "Base64 string! too long..." +} +``` + +## File/contributing Module + +| Method | Request Path | Request | Response Body | Description | +| ------ | --------------------------- | ----------------------------------------- | ------------------------------------------ | ------------------------------------- | +| GET | /file/contributing | [Request Query](#filecontributing) | [Response Body](#filecontributing) | get contributings information | +| GET | /file/contributing/\ | | [Response Body](#filecontributingid) | get contributings information only id | +| GET | /file/contributing/amount | | [Response Body](#filecontributingamount) | get contributing temlates amount | +| POST | /file/contributing/generate | [Request Body](#filecontributinggenerate) | [Response Body](#filecontributinggenerate) | get contributings for generate | + ### /file/contributing +#### Request Query + +```json +// case 1 - page=2, amount=3 -> 6 ~ 8 [200] +"http://localhost:8080/file/contributing?page=2&amount=3" + +// case 2 - page=1 -> amount will be 20 -> 0 ~ 19 [200] +"http://localhost:8080/file/contributing?page=1" +``` + #### Response Body ```json +// case 1 - page=2, amount=3 -> 6 ~ 8 [200] +[ + { + "_id": "652861f1dea21592d9928f29", + "repoName": "aws/awc-cli", + "star": 14330, + "license": "Apache License 2.0" + }, + { + "_id": "652861aadea21592d9928f28", + "repoName": "GoogleCloudPlatform/cloud-builders", + "star": 1308, + "license": "Apache License 2.0" + }, + { + "_id": "65286020dea21592d9928f26", + "repoName": "octokit/core.js", + "star": 1082, + "license": "MIT License" + } +] + +// case 2 - page=1 -> amount will be 20 -> 0 ~ 19 [200] [ - [ { - "_id": "64ed7ca9c7efe914a8d14a4f", - "type": "0.Welcome", - "title": "Welcome to Open-Set-Go contributing guide", - "repoName": "AgainIoT/Open-Set-Go", - "repoUrl": "https://github.com/AgainIoT/Open-Set-Go", - "content": "# Welcome to Open-Set-Go contributing guide\n\nThank you for investing your time in contributing to our Open-Set-Go project! Any contribution you make will be reflected on [Open-Set-Go.io](https://open-set-go.netlify.app/) & [README.md](https://github.com/AgainIoT/Open-Set-Go#contributors) ✨.\n\nWe are committed to fostering a contribution-friendly environment that encourages contributions and aims to evolve into an open-source community. Please have a lot of conversations on [our Discussion](https://github.com/AgainIoT/Open-Set-Go/discussions)!\n\nIn this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.\n
" + "_id": "6528614ddea21592d9928f27", + "repoName": "gohugoio/hugo", + "star": 69355, + "license": "Apache License 2.0" }, { - "_id": "64ed7cf5c7efe914a8d14a50", - "type": "0.Welcome", - "title": "Welcome to GitHub docs contributing guide", - "repoName": "github/docs", - "repoUrl": "https://github.com/github/docs", - "content": "# Welcome to GitHub docs contributing guide \n\nThank you for investing your time in contributing to our project! Any contribution you make will be reflected on [docs.github.com](https://docs.github.com/en) ✨.\n\nRead our [Code of Conduct](./CODE_OF_CONDUCT.md) to keep our community approachable and respectable.\n\nIn this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.\n\nUse the table of contents icon on the top left corner of this document to get to a specific section of this guide quickly." + "_id": "65285f58dea21592d9928f23", + "repoName": "expressjs/express", + "star": 62068, + "license": "MIT License" + }, + { + "_id": "65285d90dea21592d9928f22", + "repoName": "nestjs/nest", + "star": 60270, + "license": "MIT License" + }, + { + "_id": "652861f1dea21592d9928f29", + "repoName": "aws/awc-cli", + "star": 14330, + "license": "Apache License 2.0" + }, + { + "_id": "652861aadea21592d9928f28", + "repoName": "GoogleCloudPlatform/cloud-builders", + "star": 1308, + "license": "Apache License 2.0" + }, + { + "_id": "65286020dea21592d9928f26", + "repoName": "octokit/core.js", + "star": 1082, + "license": "MIT License" + }, + { + "_id": "65285c35dea21592d9928f21", + "repoName": "AgainIoT/Open-Set-Go_server", + "star": 8, + "license": "Apache License 2.0" } - ], - [ +] +``` + +### /file/contributing/\ + +#### Response Body + +```bash +## Content of the contributing.md... too long... +``` + +### /file/contributing/amount + +#### Response Body + +```json +{ + "amount": 7 +} +``` + +### /file/contributing/generate + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "description": "Open-Set-Go is the name of asdfadsfasdfasdfadsadsfasasd", // optional + "license": "Apaceh 2.0 License" // optional +} +``` + +#### Response Body + +```json +[ + { + "_id": "6527a963f2ab4fc291e5ffcf", + "index": 1, + "type": "Title and Description", + "content": "# Open-Set-Go\n\n

\n\"Enter\n

\n\n

\n Open-Set-Go is the name of asdfadsfasdfasdfadsadsfasasd\n

\n\n

\n \"License\"\n \"contributors\"\n \"your\n \"your\n \"your\n \"your\n \"your\n

\n" + }, + { + "_id": "6527ab64f2ab4fc291e5ffd1", + "index": 6, + "type": "License", + "content": "# License\n\nOpen-Set-Go is released under Apaceh 2.0 License.\nSee the [LICENSE file](\"./LICENSE\") for details.\n" + } +] +``` + +## File/readme Module + +| Method | Request Path | Request | Response Body | Description | +| ------ | --------------------- | ----------------------------------- | ------------------------------------ | ------------------------------- | +| GET | /file/readme | [Request Query](#filereadme) | [Response Body](#filereadme) | get readmes information | +| GET | /file/readme/\ | | [Response Body](#filereadmeid) | get readmes information only id | +| GET | /file/readme/amount | | [Response Body](#filereadmeamount) | get readme temlates amount | +| POST | /file/readme/generate | [Request Body](#filereadmegenerate) | [Response Body](#filereadmegenerate) | get readmes for generate | + +### /file/readme + +#### Request Query + +```json +// case 1 - page=2, amount=3 -> 6 ~ 8 [200] +"http://localhost:8080/file/readme?page=2&amount=3" + +// case 2 - page=1 -> amount will be 20 -> 0 ~ 19 [200] +"http://localhost:8080/file/readme?page=1" +``` + +#### Response Body + +```json +// case 1 - page=2, amount=3 -> 6 ~ 8 [200] +[ + { + "_id": "652861f1dea21592d9928f29", + "repoName": "aws/awc-cli", + "star": 14330, + "license": "Apache License 2.0" + }, + { + "_id": "652861aadea21592d9928f28", + "repoName": "GoogleCloudPlatform/cloud-builders", + "star": 1308, + "license": "Apache License 2.0" + }, + { + "_id": "65286020dea21592d9928f26", + "repoName": "octokit/core.js", + "star": 1082, + "license": "MIT License" + } +] + +// case 2 - page=1 -> amount will be 20 -> 0 ~ 19 [200] +[ { - "_id": "64ee1bca9dede57491a7c180", - "type": "1.Ways to contribute", - "title": "Ways to contribute by Open-Set-Go", - "repoName": "AgainIoT/Open-Set-Go", - "repoUrl": "https://github.com/AgainIoT/Open-Set-Go", - "content": "## Ways to contribute\n\n### Contributors\n\nThere are several ways you can contribute to Open-Set-Go!\n\n- Troubleshoot problems that existed code.\n- Submit Bug/Feature issues related to [bugs](https://github.com/AgainIoT/Open-Set-Go/issues?q=is%3Aopen+is%3Aissue+label%3Abug) or desired [new features](https://github.com/AgainIoT/Open-Set-Go/issues?q=is%3Aopen+is%3Aissue+label%3Afeature-request).\n- Submit Documentation issues for insufficient documents, translations.\n- Start conversation at [Discussions](https://github.com/AgainIoT/Open-Set-Go/discussions) to provide a good example of preset.\n- Start conversation by posting to [Discussions](https://github.com/AgainIoT/Open-Set-Go/discussions) about a framework that needs support.\n- If there's anything you'd like to communicate about our project or open source, feel free to post it on [Discussions](https://github.com/AgainIoT/Open-Set-Go/discussions)! _\"We hope that **Open-Set-Go Discussions** will become an active community.\"_\n\n### Collaborators\n\nIf you want to contribute directly to our project, be our collaborators at Open-Set-Go! Join the [Slack](https://join.slack.com/t/open-set-go/shared_invite/zt-21jwlzs9g-qrajfUblcCtmCqAy0Xxj8w) to become a collaborator!\n\n- **Develop Main Features**:
\n Collaborator will develop the main features with maintainers based on milestone\n All contributions are equally valuable and valuable to Open-Set-Go projects.and issues.\n\n- **Communication**:
\n Communicate with Open-Set-Go maintainers with [Slack](https://join.slack.com/t/open-set-go/shared_invite/zt-21jwlzs9g-qrajfUblcCtmCqAy0Xxj8w) to carry out the project.\n\n
\n\n> All contributions are equally valuable and valuable to Open-Set-Go projects.\n\n
" + "_id": "6528614ddea21592d9928f27", + "repoName": "gohugoio/hugo", + "star": 69355, + "license": "Apache License 2.0" + }, + { + "_id": "65285f58dea21592d9928f23", + "repoName": "expressjs/express", + "star": 62068, + "license": "MIT License" + }, + { + "_id": "65285d90dea21592d9928f22", + "repoName": "nestjs/nest", + "star": 60270, + "license": "MIT License" + }, + { + "_id": "652861f1dea21592d9928f29", + "repoName": "aws/awc-cli", + "star": 14330, + "license": "Apache License 2.0" + }, + { + "_id": "652861aadea21592d9928f28", + "repoName": "GoogleCloudPlatform/cloud-builders", + "star": 1308, + "license": "Apache License 2.0" + }, + { + "_id": "65286020dea21592d9928f26", + "repoName": "octokit/core.js", + "star": 1082, + "license": "MIT License" + }, + { + "_id": "65285c35dea21592d9928f21", + "repoName": "AgainIoT/Open-Set-Go_server", + "star": 8, + "license": "Apache License 2.0" } - ] ] ``` @@ -328,51 +772,209 @@ PR?) #### Response Body -```plain -## Welcome to Open-Set-Go contributing guide +```bash +## Content of the readme.md... too long... +``` -Thank you for investing your time in contributing to our Open-Set-Go project! Any contribution you make will be -reflected on [Open-Set-Go.io](https://open-set-go.netlify.app/) & -[README.md](https://github.com/AgainIoT/Open-Set-Go#contributors) ✨. +### /file/readme/amount -We are committed to fostering a contribution-friendly environment that encourages contributions and aims to evolve into -an open-source community. Please have a lot of conversations on [our -Discussion](https://github.com/AgainIoT/Open-Set-Go/discussions)! +#### Response Body -In this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and -merging the PR. -
+```json +{ + "amount": 7 +} ``` -### /file/readme/\ +### /file/readme/generate + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "description": "Open-Set-Go is the name of asdfadsfasdfasdfadsadsfasasd", // optional + "license": "Apaceh 2.0 License" // optional +} +``` #### Response Body ```json [ { - "_id": "64ed835fc7efe914a8d14a51", - "type": "welcome", - "title": "title1", - "repoName": "test1", - "repoUrl": "www.google.com", - "content": "content1" + "_id": "6527a963f2ab4fc291e5ffcf", + "index": 1, + "type": "Title and Description", + "content": "# Open-Set-Go\n\n

\n\"Enter\n

\n\n

\n Open-Set-Go is the name of asdfadsfasdfasdfadsadsfasasd\n

\n\n

\n \"License\"\n \"contributors\"\n \"your\n \"your\n \"your\n \"your\n \"your\n

\n" }, { - "_id": "64ed838ac7efe914a8d14a52", - "type": "welcome", - "title": "title2", - "repoName": "test2", - "repoUrl": "www.google.com", - "content": "content2" + "_id": "6527ab64f2ab4fc291e5ffd1", + "index": 6, + "type": "License", + "content": "# License\n\nOpen-Set-Go is released under Apaceh 2.0 License.\nSee the [LICENSE file](\"./LICENSE\") for details.\n" } ] ``` -### /file/contributing/\ +## Review Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ----------------- | ------------------------------------------ | --------------------------------- | ------------------------------------------------------------------------- | +| POST | /review/template | cookies + [Request Body](#reviewtemplate) | [Response Body](#reviewtemplate) | review pr & issue template, readme, contributing exist | +| POST | /review/community | cookies + [Request Body](#reviewcommuntiy) | [Response Body](#reviewcommuntiy) | review description, code of conduct, discussion, license exist or enabled | +| POST | /review/seurity | cookies + [Request Body](#reviewsecurity) | [Response Body](#reviewsecurity) | review dependabot, codeql, secretscanning, security policy enabled | + +### /review/template + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go" +} +``` + +#### Response Body + +```json +{ + "pr": true, // or false + "issue": true, // or false + "contributing": true, // or false + "readme": true // or false +} +``` + +### /review/community + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go" +} +``` + +#### Response Body + +```json +{ + "description": true, + "license": { + "exist": true, + "name": "MIT" + }, + "conduct": true, + "discussion": true +} +``` + +### /review/security + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go" +} +``` + +#### Response Body + +```json +{ + "codeql": true, + "secretScan": true, + "securityPolicy": true, + "dependabot": true +} +``` + +## Review/file Module + +| Method | Request Path | Request Body | Response Body | Description | +| ------ | ------------------------- | ------------------------------------------------- | ---------------------------------------- | ------------------------------------------------------------- | +| POST | /review/file/pr | cookies + [Request Body](#reviewfilepr) | [Response Body](#reviewfilepr) | create Pull-Request at target repository with pr template | +| POST | /review/file/issue | cookies + [Request Body](#reviewfileissue) | [Response Body](#reviewfileissue) | create Pull-Request at target repository with issue template | +| POST | /review/file/contributing | cookies + [Request Body](#reviewfilecontributing) | [Response Body](#reviewfilecontributing) | create Pull-Request at target repository with CONTRIBUTING.md | +| POST | /review/file/readme | cookies + [Request Body](#reviewfilereadme) | [Response Body](#reviewfilereadme) | create Pull-Request at target repository with README.md | + +### /review/file/pr + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "content": "## test Markdown\n- test1\n- test2" +} +``` + +#### Response Body + +```plain +https://github.com/AgainIoT/Open-Set-Go/pull/12 +``` + +### /review/file/issue + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "issues": [ + { + "category": "Bug_Report", + "content": "---\nname: \"πŸ› Bug Report\"\ndescription: Report a bug\ntitle: \"πŸ› [BUG] - \"\nlabels: [\"bug\"]\nassignees: []" + }, + { + "category": "Feature_Request", + "content": "---\nname: \"πŸ› Bug Report\"\ndescription: Report a bug\ntitle: \"πŸ› [BUG] - <title>\"\nlabels: [\"bug\"]\nassignees: []" + } + ] +} +``` + +### /review/file/contributing + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "content": "## test Markdown\n- test1\n- test2" +} +``` + +#### Response Body + +```plain +https://github.com/AgainIoT/Open-Set-Go/pull/12 +``` + +### /review/file/readme + +#### Request Body + +```json +{ + "owner": "AgainIoT", + "repoName": "Open-Set-Go", + "content": "## test Markdown\n- test1\n- test2" +} +``` #### Response Body ```plain -content1 +https://github.com/AgainIoT/Open-Set-Go/pull/12 ``` diff --git a/content/en/docs/guideForDevelopment/commandClient.md b/content/en/docs/guideForDevelopment/commandClient.md index a92894f..01baf91 100644 --- a/content/en/docs/guideForDevelopment/commandClient.md +++ b/content/en/docs/guideForDevelopment/commandClient.md @@ -11,4 +11,54 @@ menu: parent: "guideForDevelopment" weight: 190 toc: true ---- \ No newline at end of file +--- + +{{< alert icon="πŸ’‘" text="You can check the command in the Script section of '/package.json'." />}} + +## Start + +Command to Execute: + +```bash +yarn start +``` + +Start HTTPS for linux: + +```bash +yarn start:linux +``` + +Start HTTPS for windows: + +```bash +yarn start:wins +``` + +## Build + +Build project: + +```bash +yarn build +``` + +Installs serve package: + +```bash +yarn global add serve +``` + +Serve your build directory: + +```bash +serve -s build +``` + +## CI + +Code Style Verification (code commitment only when passing CI): + +```bash +yarn CI +``` diff --git a/content/en/docs/guideForDevelopment/commandServer.md b/content/en/docs/guideForDevelopment/commandServer.md index e3508ed..a3345d8 100644 --- a/content/en/docs/guideForDevelopment/commandServer.md +++ b/content/en/docs/guideForDevelopment/commandServer.md @@ -45,7 +45,7 @@ Check scripts, styles, and markdown for errors: yarn lint ``` -### Deploy +## Deploy Deploy project: @@ -53,7 +53,7 @@ Deploy project: yarn deploy ``` -### CI +## CI Code Style Verification (code commitment only when passing CI): diff --git a/content/en/docs/guideForDevelopment/contribute.md b/content/en/docs/guideForDevelopment/contribute.md index b4f9972..d706381 100644 --- a/content/en/docs/guideForDevelopment/contribute.md +++ b/content/en/docs/guideForDevelopment/contribute.md @@ -12,9 +12,10 @@ menu: weight: 160 toc: true --- + _You can also check this out on Contributing.md on our GitHub. [Shortcut of Contributing.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/CONTRIBUTING.md)_ -# Welcome to Open-Set-Go contributing guide +### Welcome to Open-Set-Go contributing guide Thank you for investing your time in contributing to our Open-Set-Go project! Any contribution you make will be reflected on [Open-Set-Go.io](https://open-set-go.netlify.app/) & [README.md](https://github.com/AgainIoT/Open-Set-Go#contributors) ✨. @@ -136,7 +137,7 @@ We are developing using GitLab-flow. See [GitLab-flow](https://about.gitlab.com/ | Test | Test code | | Chore | Other minor modifications | -``` +```bash git config --local commit.template .gitmessage.txt ``` @@ -152,12 +153,11 @@ _You can apply .gitmessage.txt in the same way as above!_ #### Samples -``` +```bash Feat : New feature added! #24 - something added 1 - another else added 2 ``` - _<center>β€» Anyone who wants to be a collaborator of Open-Set-Go is always welcome!</center>_ diff --git a/content/en/docs/guideForDevelopment/environmentVariable.md b/content/en/docs/guideForDevelopment/environmentVariable.md index 6678f4a..8b92f75 100644 --- a/content/en/docs/guideForDevelopment/environmentVariable.md +++ b/content/en/docs/guideForDevelopment/environmentVariable.md @@ -1,14 +1,131 @@ ---- -title: "Environment Variable" -description: "" -lead: "" -date: 2020-11-16T13:59:39+01:00 -lastmod: 2020-11-16T13:59:39+01:00 -draft: false -images: [] -menu: - docs: - parent: "guideForDevelopment" -weight: 140 -toc: true ---- \ No newline at end of file +# Environment Variables + +To run this project, you will need to add the following environment variables to your `.env` file + +- [What's meaning of ...](#whats-meaning-of) +- [making with bash](#making-with-bash) +- [making with .env](#making-with-env) + - [client](#client) + - [server](#server) + +## What's meaning of ... + +```bash +$clientID +$clientSecret +$mongodbURI +$jwtToken +$jwtExpirationTime +$mailUser +$mailPass +``` + +### ClientID & ClientSecret + +Client ID & Client Secret is generated by GitHub OAuth App!<br> +Follow each step to create your own GitHub Oauth App... + +1. Login at [GitHub](https://github.com) & Access to [OAuth Apps](https://github.com/settings/developers) + + ```bash + GitHub -> Settings -> Developer settings -> OAuth Apps + ``` + +2. Click `New OAuth App` & insert your own data + + ```bash + Application name: <any application name you want> + Homepage URL: <any URL format you want> + Authorization callback URL: http://localhost:3000/login + ``` + + > `Authorization callback URL`<br> + > The Authorization callback URL is a redirect url that should be returned after you complete the OAuth login, with react server ip before and /login after.<br> + > When you test with local environment, you should use `http://localhost:3000/login` + +3. Get your OAuth App's Client ID & Client Secret<br> + Click `Generate a new client secret` to get your own `ClientID` & `Client Secret`! + +### MongoDBURI + +Build your own [MongoDB](https://www.mongodb.com/docs/manual/installation/) or Create cluster with [MongoDB Atlas](https://www.mongodb.com/ko-kr/cloud/atlas/lp/try4) & Get your [MongoDB's URI](https://www.mongodb.com/docs/v3.0/reference/connection-string/) + +```bash +mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] +``` + +### JWT Token & JWT ExpirationTime + +`jwtToken` doesn't matter what word it is! However, please be careful not to space out! And `jwtExpirationTime` means the time the JWT token expires, and Open-Set-Go is using 18000 by default! (Units are `ms`!) + +> [JWT(JSON Web Token)](https://jwt.io/introduction) <br> +> JWT is an open standard ([RFC 7519](https://datatracker.ietf.org/doc/html/rfc7519)) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. + +### MailUser & MailPass + +Open-Set-Go sends you a mail when you first create a repository! Also, in order to send mail, you need the address of the mail and the app password to send! + +> [Gmail App Password](https://support.google.com/mail/answer/185833?hl=en)<br> +> An app password is a 16-digit passcode that gives a less secure app or device permission to access your Google Account. App passwords can only be used with accounts that have 2-Step Verification turned on.<br> + +<br> + +## Making with bash + +Generate `.env` files(client & server) easily with env.sh + +```bash +sudo bash env.sh +``` + +<br> + +## Making with .env + +### πŸ™Ž Client + +```bash +REACT_APP_CLIENT_ID=$clientID +REACT_APP_REDIRECT_URL=http://localhost:3000/login # this must be same with your OAuth's redirect URL +REACT_APP_SERVER_URL=http://localhost:8080 # your server's URL +RECOIL_DUPLICATE_ATOM_KEY_CHECKING_ENABLED=false # env for recoil +``` + +> `REACT_APP_CLIENT_ID`<br> +> Details at [ClientID & ClientSecret](#clientid--clientsecret) +> `REACT_APP_REDIRECT_URL`<br> +> Details at [ClientID & ClientSecret](#clientid--clientsecret) +> `REACT_APP_SERVER_URL`<br> +> Use your server IP, default is `http://localhost:8080`! +> `RECOIL_DUPLICATE_ATOM_KEY_CHECKING_ENABLED`<br> +> Related to recoil! + +### πŸ–₯️ Server + +```bash +MONGODB_URI=$mongodbURI +CLIENT_ID=$clientID +CLIENT_SECRET=$clientSecret +JWT_SECRET=$jwtToken +JWT_EXPIRATION_TIME=$jwtExpirationTime +MAIL_USER=$mailUser +MAIL_PASS=$mailPass +ORIGIN=http://localhost:3000 +``` + +> `MONGODB_URI`<br> +> Details at [MongodbURI](#mongodburi) +> `CLIENT_ID`<br> +> Details at [ClientID & ClientSecret](#clientid--clientsecret) +> `CLIENT_SECRET`<br> +> Details at [ClientID & ClientSecret](#clientid--clientsecret) +> `JWT_SECRET`<br> +> Details at [jwtSecret & jwtExpirationTime](#jwttoken--jwtexpirationtime) +> `JWT_EXPIRATION_TIME`<br> +> Details at [jwtSecret & jwtExpirationTime](#jwttoken--jwtexpirationtime) +> `MAIL_USER`<br> +> Details at [mailUser & mailPass](#mailuser--mailpass) +> `MAIL_PASS`<br> +> Details at [mailUser & mailPass](#mailuser--mailpass) +> `ORIGIN`<br> +> ORIGIN is an environmental variable to prevent CORS policy problems. You can create the IP of the client to use the server. Default is `http://localhost:3000`. diff --git a/content/en/docs/guideForDevelopment/quickStart.md b/content/en/docs/guideForDevelopment/quickStart.md index c44ec39..7610204 100644 --- a/content/en/docs/guideForDevelopment/quickStart.md +++ b/content/en/docs/guideForDevelopment/quickStart.md @@ -13,90 +13,94 @@ weight: 120 toc: true --- -### πŸ–₯️Server +### πŸ™Ž Client -**Install with script** +1.**Install with script** You can also easily install it through [install.sh](https://github.com/AgainIoT/Open-Set-Go#installation--development-environment)! -**Install with docker** +2.**Install Manually** -1. Pull our docker image! +- Clone our Repository! - ``` - docker pull ymw0407/open-set-go_server - ``` + ```bash + git clone https://github.com/AgainIoT/Open-Set-Go_client.git + ``` + +- Install the Development Environment -2. Create `.env` file at root to use secret environment +- Install Node Dependencies - > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) + ```bash + yarn install + ``` -3. Start Open-Set-Go Server's docker with environment variable! +- Create `.env` file at root to use secret environment -**Install Manually** + > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) -1. Clone our Repository! +- Start Open-Set-Go Server ```bash - git clone https://github.com/AgainIoT/Open-Set-Go_server.git + # for development + yarn start + yarn start:linux # start HTTPS for linux + yarn start:wins # start HTTPS for windows + + # for production + yarn build + yarn global add serve + serve -s build ``` -2. Install the Development Environment +### πŸ–₯️ Server -3. Install Node Dependencies - ```bash - yarn install - ``` -4. Create `.env` file at root to use secret environment +1.**Install with script** - > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) +You can also easily install it through [install.sh](https://github.com/AgainIoT/Open-Set-Go#installation--development-environment)! -5. Start Open-Set-Go Server +2.**Install with docker** - ```bash - # for development - yarn start - yarn start:dev # Restart by detecting changes in the file! +- Pull our docker image! - # for production - yarn build - node dist/main.js - ``` + ```bash + docker pull ymw0407/open-set-go_server + ``` -### πŸ™ŽClient +- Create `.env` file at root to use secret environment -**Install with script** + > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) -You can also easily install it through [install.sh](https://github.com/AgainIoT/Open-Set-Go#installation--development-environment)! +- Start Open-Set-Go Server's docker with environment variable! -**Install Manually** + 2.**Install Manually** -1. Clone our Repository! +- Clone our Repository! - ```bash - git clone https://github.com/AgainIoT/Open-Set-Go_client.git - ``` + ```bash + git clone https://github.com/AgainIoT/Open-Set-Go_server.git + ``` -2. Install the Development Environment +- Install the Development Environment -3. Install Node Dependencies - ```bash - yarn install - ``` -4. Create `.env` file at root to use secret environment +- Install Node Dependencies - > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) + ```bash + yarn install + ``` -5. Start Open-Set-Go Server +- Create `.env` file at root to use secret environment + + > See more details at [EnvironmentVariable.md](https://github.com/AgainIoT/Open-Set-Go/blob/main/EnvironmentVariable.md) + +- Start Open-Set-Go Server ```bash - # for development - yarn start - yarn start:linux # start HTTPS for linux - yarn start:wins # start HTTPS for windows - - # for production - yarn build - yarn global add serve - serve -s build - ``` \ No newline at end of file + # for development + yarn start + yarn start:dev # Restart by detecting changes in the file! + + # for production + yarn build + node dist/main.js + ``` diff --git a/content/en/docs/help/contact.md b/content/en/docs/help/contact.md index 9275653..4b15824 100644 --- a/content/en/docs/help/contact.md +++ b/content/en/docs/help/contact.md @@ -22,4 +22,3 @@ If you have something to ask or would like to ask the AgainIoT team for help, yo - πŸ“§ [Mail](mailto:yunminwo1211@gmail.com) - πŸ’¬ [Slack](https://join.slack.com/t/open-set-go/shared_invite/zt-25xkwvzrp-mBcETQ811LK_BOEoiB8YPQ) - diff --git a/content/en/docs/help/templateRequest.md b/content/en/docs/help/templateRequest.md index fe71414..2cfdb8c 100644 --- a/content/en/docs/help/templateRequest.md +++ b/content/en/docs/help/templateRequest.md @@ -12,12 +12,15 @@ menu: weight: 120 toc: true --- + [Go to Create Template Request ➑️](https://github.com/AgainIoT/Open-Set-Go/issues/new?assignees=&labels=template-request&projects=&template=Templates.yml&title=%F0%9F%93%83+%5BTEMPLATE+REQUEST%5D+-+%3Ctitle%3E) ### When do I use this? + A template that requests Open-Set-Go to enter a template. You can use it if you have a template you want to use or if you want to recommend it to others. ### What should you write? + Enter the type of template you want (Readme.md , Issue Template, etc.), Owner/Repository, GitHub Stars, License, Content. -⚠️ Note that there are only three licenses available: Apache License 2.0, MIT, and BSD-3-Clause. \ No newline at end of file +⚠️ Note that there are only three licenses available: Apache License 2.0, MIT, and BSD-3-Clause. diff --git a/content/en/docs/prologue/introduction.md b/content/en/docs/prologue/introduction.md index c606f5b..988057a 100644 --- a/content/en/docs/prologue/introduction.md +++ b/content/en/docs/prologue/introduction.md @@ -12,6 +12,7 @@ menu: weight: 100 toc: true --- + ### 🚩 Prologue --- @@ -19,7 +20,6 @@ toc: true This page contains a one-line introduction to Open-Set-Go, a description, and the features it provides. It consists of Introduction, What is Open-Set-Go?, Why Open-Set-Go?. [Prologue β†’](https://docs.open-set-go.com/docs/prologue/whatIsOpenSetGo/) <br></br> - ### 🀝 Guide For Development --- @@ -31,7 +31,7 @@ This page is intended for developers who want to contribute to the development o --- -This page is for those who want to use Open-Set-Go to create new open-source projects or review operations for existing projects. It consists of Tutorial, Template, Security, Security, and Recommandation. [Guide For Client β†’](https://docs.open-set-go.com/docs/guideForClient/tutorial/) +This page is for those who want to use Open-Set-Go to create new open-source projects or review operations for existing projects. It consists of Tutorial, Template, Security, Security, and Recommandation. [Guide For Client β†’](https://docs.open-set-go.com/docs/guideForClient/tutorial/) <br></br> ### πŸ”Ž Template Guides diff --git a/content/en/docs/prologue/whatisopensetgo.md b/content/en/docs/prologue/whatisopensetgo.md index e120684..df85ab8 100644 --- a/content/en/docs/prologue/whatisopensetgo.md +++ b/content/en/docs/prologue/whatisopensetgo.md @@ -12,16 +12,21 @@ menu: weight: 130 toc: true --- + ### Summary + --- + **Open-Set-Go** is the `Open-Source Management Platform` for Open-Source Developers. Open-Set-Go provides the creation of new open-source projects and operational review for existing projects. ### Description + --- + **Open-Set-Go** is dependent on **GitHub**, and the GitHub OAuth 2.0 authorization process allows you analyze, create, and requests Pull-Request from your(or your organization's) GitHub repository. - Create [Pull-Request Template](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request), [Issue Templates](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue), [README.md](https://docs.github.com/ko/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes), [CONTRIBUTING.md](https://mozillascience.github.io/working-open-workshop/contributing/) with Open-Set-Go! - Open-Set-Go provides documents from many well-known open-source projects and allows them to be modified with markdown editor! -- Create beautiful documents easily and simply using Open-Set-Go's personalized template! \ No newline at end of file +- Create beautiful documents easily and simply using Open-Set-Go's personalized template! diff --git a/content/en/docs/prologue/whyopensetgo.md b/content/en/docs/prologue/whyopensetgo.md index 0e35cd6..790a888 100644 --- a/content/en/docs/prologue/whyopensetgo.md +++ b/content/en/docs/prologue/whyopensetgo.md @@ -12,6 +12,7 @@ menu: weight: 160 toc: true --- + ### For starting new Open-Source Project It is not just to create a Source-Open Project, but to create a contribution-friendly environment and create an environment where communication between developers and contributors is smooth to create sustainable open source projects. @@ -25,4 +26,4 @@ It provides an open-source operation review feature for three areas for the open - Security: Check whether the features provided by GitHub for the security of open-source projects are activated. -- Community: Check the elements needed to build an open-source community. \ No newline at end of file +- Community: Check the elements needed to build an open-source community.