From f33fdd51a84d9317db8718747b0807166eb248cf Mon Sep 17 00:00:00 2001 From: everything became blue <39682540+yunyoungJang@users.noreply.github.com> Date: Thu, 14 Mar 2024 17:26:41 +0900 Subject: [PATCH 01/15] Create contributor_guidelines.md --- contributor_docs/ko/contributor_guidelines.md | 552 ++++++++++++++++++ 1 file changed, 552 insertions(+) create mode 100644 contributor_docs/ko/contributor_guidelines.md diff --git a/contributor_docs/ko/contributor_guidelines.md b/contributor_docs/ko/contributor_guidelines.md new file mode 100644 index 0000000000..80a3d4c9fb --- /dev/null +++ b/contributor_docs/ko/contributor_guidelines.md @@ -0,0 +1,552 @@ +# Contributor Guidelines + +Welcome to the contributor guidelines! This document is for new contributors looking to contribute code to p5.js, contributors looking to refresh their memories on some technical steps, or just about anything else to do with code contributions to p5.js. + +If you are looking to contribute outside of the p5.js repositories (writing tutorials, planning classes, organizing events), please have a look at the other relevant pages instead. Stewards or maintainers may find the [steward guidelines](https://github.com/processing/p5.js/blob/main/contributor_docs/steward_guidelines.md) more helpful regarding reviewing issues and pull requests. + +This is a relatively long and comprehensive document but we will try to signpost all steps and points as clearly as possible. Do utilize the table of contents to find sections relevant to you. Feel free to skip sections if they are not relevant to your planned contributions. + +**If you are a new contributor, you may want to start with the first section, “All about issues.” If you just want a step-by-step setup of the development process, you can look at the “Quick Get Started For Developers” section.** + + +# Table of Contents + +- [All about issues](#all-about-issues) + - [What are issues?](#what-are-issues) + - [Issue templates](#issue-templates) + - [Found a bug](#found-a-bug) + - [Existing Feature Enhancement](#existing-feature-enhancement) + - [New Feature Request](#new-feature-request) + - [Discussion](#discussion) +- [Working on p5.js codebase](#working-on-the-p5js-codebase) + - [Quick Get Started For Developers](#quick-get-started-for-developers) + - [Using the Github edit functionality](#using-the-github-edit-functionality) + - [Forking p5.js and working from your fork](#forking-p5js-and-working-from-your-fork) + - [Using Github Desktop](#using-github-desktop) + - [Using the git command line interface](#using-the-git-command-line-interface) + - [Codebase breakdown](#codebase-breakdown) + - [Build setup](#build-setup) + - [Git workflow](#git-workflow) + - [Source code](#source-code) + - [Unit tests](#unit-tests) + - [Inline documentation](#inline-documentation) + - [Internationalization](https://github.com/processing/p5.js/blob/main/contributor_docs/contributor_guidelines.md#internationalization) + - [Accessibility](#accessibility) + - [Code standard](#code-standard) + - [Software Design principles](#software-design-principles) +- [Pull requests](#pull-requests) + - [Creating a pull request](#creating-a-pull-request) + - [Pull request information](#pull-request-information) + - [Title](#title) + - [Resolves](#resolves) + - [Changes](#changes) + - [Screenshots of the change](#screenshots-of-the-change) + - [PR Checklist](#pr-checklist) + - [Rebase and resolve conflicts](#rebase-and-resolve-conflicts) + - [Discuss and amend](#discuss-and-amend) + +--- + + +# All about issues + +The majority of the activity on p5.js' GitHub repositories (repo for short) happens in issues, which is a great place to start your contribution journey. + + +## What are issues? + +![A cropped screenshot of the p5.js library GitHub repository, only showing contents of the top right corner. A red box is drawn on top of the screenshot surrounding the Issues tab.](images/issues-tab.png) + +“Issue” is the generic name for a post on GitHub that aims to describe, well, an issue. This issue can be a bug report, a request to add a new feature, a discussion, or anything that works as a post related to p5.js library development. Comments can be added below each issue by anyone with a GitHub account, including bots! It is the place where contributors discuss topics related to the development of the project in the repo. + +While an issue can be opened for a wide variety of reasons, we usually only use issues to discuss the development of p5.js source code. Topics such as debugging your own code, inviting collaborators to your project, or other unrelated topics should be discussed + +either on the [forum](https://discourse.processing.com) or on other platforms such as [Discord](https://discord.gg/SHQ8dH25r9). + +We have created easy-to-use issue templates to aid you in deciding whether a topic should be a GitHub issue or posted elsewhere! + + +## Issue templates + +p5.js's issue templates make it easier for stewards and maintainers to understand and review issues. They also make it easier for you to file the relevant issue and receive a reply faster.  + +![Screenshot of an example of what an issue looks like on GitHub. The title of the issue in the screenshot is "Warning being logged in Safari when using a filter shader in 2D mode #6597"](images/github-issue.png) + +To file a new issue, simply go to the "Issues" tab on the p5.js repo and click on the "New issue" button on the right side. You will be presented with several different options, each of which either corresponds to a relevant issue template or redirects you to the relevant place to file your question. We recommend choosing the most relevant option out of those presented to ensure your issue receives the right attention promptly. + +![Cropped screenshot of the GitHub repository's issue page with the green "New issue" button highlighted with a red box surrounding it.](images/new-issue.png) + + +### ["Found a bug"](https://github.com/processing/p5.js/issues/new?assignees=\&labels=Bug\&projects=\&template=found-a-bug.yml) + +When you encounter possible incorrect behavior in p5.js or something not behaving as described in the documentation, use [this template](https://github.com/processing/p5.js/issues/new?assignees=\&labels=Bug\&projects=\&template=found-a-bug.yml). Please note that if you are trying to debug your sketch and you think it may be a problem with your code, you should first ask on the [Discourse forum](https://discourse.processing.org) instead. + +There are a few fields for you to fill in for this template: + +1. *Most appropriate sub-area of p5.js?* - This helps us identify and respond to your issue by automatically tagging the issue with the relevant [labels](https://github.com/processing/p5.js/blob/main/contributor_docs/issue_labels.md). +2. *p5.js version* - You can find the p5.js version number in either the `