Skip to content

Commit 6260543

Browse files
authored
Merge pull request #34 from dnd-side-project/release/0.0.1
Release/0.0.1
2 parents e87b9e2 + 3872dc4 commit 6260543

File tree

192 files changed

+12161
-4996
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

192 files changed

+12161
-4996
lines changed

.eslintignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
node_modules
2+
dist
3+
.yarn
4+
yarn.lock
5+
*.sh

.eslintrc.js

Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
module.exports = {
2+
root: true,
3+
env: {
4+
es6: true,
5+
node: true,
6+
},
7+
parser: '@typescript-eslint/parser',
8+
extends: [
9+
'eslint:recommended',
10+
'plugin:@typescript-eslint/recommended',
11+
'eslint-config-prettier',
12+
'next/core-web-vitals',
13+
],
14+
plugins: ['@typescript-eslint', 'import', 'prettier', 'react', 'react-hooks', 'jsx-a11y'],
15+
settings: {
16+
'import/resolver': {
17+
node: {
18+
extensions: ['.js', '.jsx', '.ts', '.tsx'],
19+
},
20+
},
21+
},
22+
23+
rules: {
24+
'prettier/prettier': [
25+
'error',
26+
{
27+
endOfLine: 'auto',
28+
},
29+
],
30+
31+
'react-hooks/exhaustive-deps': 'error',
32+
33+
// TypeScript에서 이미 잡고 있는 문제이기 때문에 + location, document 등의 global variable도 잡아서
34+
'no-undef': 'off',
35+
36+
// 아래 3개의 경우, Prettier가 이미 잘 해 주고 있는 부분이기 때문에
37+
indent: 'off',
38+
'@typescript-eslint/indent': 'off',
39+
semi: 'off',
40+
41+
// 이미 널리 쓰이고 있어 에러 수가 감당이 되지 않아 잠시 꺼둡니다.
42+
'@typescript-eslint/no-non-null-assertion': 'off',
43+
'@typescript-eslint/no-explicit-any': 'off',
44+
45+
// Strict-boolean-expression을 사용할지 아직 결론이 나지 않아서
46+
'no-extra-boolean-cast': 'off',
47+
48+
// union type을 받는 함수에서 모든 경우의 수에 대해 return 해도 eslint가 추론하지 못하고 있어서 warn만 하고 있음
49+
'getter-return': 'warn',
50+
51+
// 대부분의 경우 필요가 없어서
52+
'@typescript-eslint/explicit-function-return-type': 'off',
53+
54+
// Hoisting을 전략적으로 사용한 경우가 많아서
55+
'@typescript-eslint/no-use-before-define': 'off',
56+
57+
// 모델 정의 부분에서 class와 interface를 합치기 위해 사용하는 용법도 잡고 있어서
58+
'@typescript-eslint/no-empty-interface': 'off',
59+
60+
// 모델 정의 부분에서 파라미터 프로퍼티를 잘 쓰고 있어서
61+
'@typescript-eslint/no-parameter-properties': 'off',
62+
63+
// TypeScript에서 이미 잘 해주고 있어서
64+
'react/prop-types': 'off',
65+
66+
// React.memo, React.forwardRef에서 사용하는 경우도 막고 있어서
67+
'react/display-name': 'off',
68+
69+
// 탭내빙 어택 방지
70+
'react/jsx-no-target-blank': 'error',
71+
72+
// 불필요한 Fragment 방지
73+
'react/jsx-no-useless-fragment': 'warn',
74+
75+
'no-async-promise-executor': 'warn',
76+
77+
'@typescript-eslint/prefer-as-const': 'warn',
78+
'@typescript-eslint/no-non-null-asserted-optional-chain': 'warn',
79+
'@typescript-eslint/ban-types': 'warn',
80+
'@typescript-eslint/no-inferrable-types': 'warn',
81+
'@typescript-eslint/no-empty-function': 'off',
82+
'@typescript-eslint/naming-convention': [
83+
'error',
84+
{
85+
format: ['camelCase', 'UPPER_CASE', 'PascalCase'],
86+
selector: 'variable',
87+
leadingUnderscore: 'allow',
88+
},
89+
{
90+
format: ['camelCase', 'PascalCase'],
91+
selector: 'function',
92+
filter: { regex: '[ㄱ-ㅎ|ㅏ-ㅣ|가-힣]', match: false },
93+
},
94+
{
95+
format: ['PascalCase'],
96+
selector: 'interface',
97+
filter: { regex: '[ㄱ-ㅎ|ㅏ-ㅣ|가-힣]', match: false },
98+
},
99+
{
100+
format: ['PascalCase'],
101+
selector: 'typeAlias',
102+
filter: { regex: '[ㄱ-ㅎ|ㅏ-ㅣ|가-힣]', match: false },
103+
},
104+
],
105+
'@typescript-eslint/explicit-module-boundary-types': 'off',
106+
'@typescript-eslint/array-type': ['error', { default: 'array-simple' }],
107+
'@typescript-eslint/no-unused-vars': ['warn', { ignoreRestSiblings: true }],
108+
'@typescript-eslint/member-ordering': [
109+
'error',
110+
{
111+
default: [
112+
'public-static-field',
113+
'private-static-field',
114+
'public-instance-field',
115+
'private-instance-field',
116+
'public-constructor',
117+
'private-constructor',
118+
'public-instance-method',
119+
'private-instance-method',
120+
],
121+
},
122+
],
123+
'no-warning-comments': [
124+
'warn',
125+
{
126+
terms: ['TODO', 'FIXME', 'XXX', 'BUG'],
127+
location: 'anywhere',
128+
},
129+
],
130+
'object-shorthand': ['error', 'always'],
131+
'prefer-const': 'error',
132+
'no-var': 'error',
133+
eqeqeq: ['error', 'always', { null: 'ignore' }],
134+
'import/no-duplicates': 'off',
135+
136+
'sort-imports': [
137+
'error',
138+
{
139+
ignoreDeclarationSort: true,
140+
ignoreMemberSort: false,
141+
},
142+
],
143+
'import/newline-after-import': ['error'],
144+
145+
'react-hooks/rules-of-hooks': 'error',
146+
147+
'react/jsx-uses-react': 'off',
148+
'react/react-in-jsx-scope': 'off',
149+
150+
'react/jsx-key': 'warn',
151+
152+
// 접근성, 충분히 잡히면 error로 올릴 예정
153+
'jsx-a11y/alt-text': [
154+
'warn',
155+
{
156+
img: ['Image', 'Dialog.Image'],
157+
},
158+
],
159+
'jsx-a11y/aria-props': 'error', // 제대로된 aria-* 이름인지 확인
160+
'jsx-a11y/aria-proptypes': 'error', // 제대로된 aria-*의 value 인지 검사
161+
'jsx-a11y/aria-role': 'warn', // 표준 role 값인지 확인하는 룰
162+
'jsx-a11y/role-supports-aria-props': 'warn', // 서로 같이 쓰면 안되는 aria-* 가 있는지 확인하는룰
163+
'jsx-a11y/aria-unsupported-elements': 'warn', // 해당 element에서 미지원하는 aria가 들어있는지 확인하는 룰
164+
'jsx-a11y/img-redundant-alt': [
165+
'warn',
166+
{
167+
components: ['Image', 'Dialog.Image'],
168+
words: ['사진', '이미지'],
169+
},
170+
],
171+
'import/order': [
172+
'warn',
173+
{
174+
groups: [
175+
['builtin', 'external'],
176+
['internal', 'parent', 'sibling', 'index'],
177+
['object'],
178+
['type'],
179+
],
180+
'newlines-between': 'always',
181+
alphabetize: {
182+
order: 'asc',
183+
caseInsensitive: true,
184+
},
185+
},
186+
],
187+
},
188+
overrides: [
189+
{
190+
files: ['**/*.js', 'scripts/**/*.ts'],
191+
rules: {
192+
'@typescript-eslint/no-var-requires': 'warn',
193+
},
194+
},
195+
],
196+
};

.eslintrc.json

Lines changed: 0 additions & 3 deletions
This file was deleted.

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @guesung @seondal
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: Trouble Shooting
3+
about: 발견한 문제와 문제의 원인, 해결 방안을 제시해주세요.
4+
title: '[Trouble Shooting]'
5+
labels: fix
6+
assignees: ''
7+
---
8+
9+
## 원인
10+
11+
<!-- 문제의 원인을 정확하게 파악하고 기록하는 것이 중요함 -->
12+
13+
## 접근 방법
14+
15+
<!-- 해당 방법으로 시도한 이유와 어디서 찾았는지 출처정도를 레퍼런스 달면 좋음 -->
16+
17+
## 해결 과정
18+
19+
<!-- - 그래서 이걸 어떻게 구현할지?
20+
- 어떻게 해결할지 어떤 방법으로 접근했고 어떻게 시도했는지?
21+
- 구현하거나 버그를 해결하는 과정을 구체적으로 순서대로 기술
22+
- 사진이나 구조도 플로우 차트 등 다양하게 활용해도 좋음 -->
23+
<!-- LucidChart -->
24+
<!-- 다이어그램이나 코드 조각 등 다양하게 활용해서 쓰면 된다. -->
25+
26+
## 결론
27+
28+
<!-- 이 부분은 자유롭게 현 이슈를 마무리하면 된다. -->

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
## 💡 왜 PR을 올렸나요?
2+
23
<!-- 예: 이슈대응, 신규피쳐, 리팩토링 ... -->
34

45
- 신규 피처
56

67
## 💁 무엇이 어떻게 바뀌나요?
78

8-
1.
9-
2.
10-
3.
9+
1.
10+
2.
11+
3.
1112

1213
## 📆 작업 예정인 것이 있나요 ?
1314

14-
-
15+
-
1516

1617
## 💬 리뷰어분들께
1718

.github/auto_assign.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
addReviewers: false
2+
addAssignees: author

.github/labeler.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# enable labeler on issues, prs, or both.
2+
enable:
3+
issues: true
4+
prs: true
5+
6+
comments:
7+
prs: |
8+
Labeler가 제목과 설명에 있는 특별한 텍스트와 일치하는 레이블을 적용했습니다.
9+
Label을 검토하고 필요한 변경 사항을 적용해 주세요.
10+
11+
labels:
12+
'Component':
13+
include:
14+
- '\bComponent\b'
15+
'Fix':
16+
include:
17+
- '\bFix\b'
18+
'Bug':
19+
include:
20+
- '\bBug\b'
21+
'Page':
22+
include:
23+
- '\bPage\b'
24+
'Docs':
25+
include:
26+
- '\bDocs\b'
27+
'Setting':
28+
include:
29+
- '\bSetting\b'
30+
'Refactoring':
31+
include:
32+
- '\bRefactoring\b'
33+
'Help wanted':
34+
include:
35+
- '\binclude\b'
36+
'Test':
37+
include:
38+
- '\bTest\b'
39+
'Featuring':
40+
include:
41+
- '\bFeaturing\b'

.github/workflows/auto-label.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Auto Label
2+
on:
3+
pull_request:
4+
types: [opened, reopened, edited]
5+
issues:
6+
types: [opened, reopened, edited]
7+
8+
jobs:
9+
labeler:
10+
runs-on: ubuntu-latest
11+
permissions:
12+
contents: read
13+
pull-requests: write
14+
steps:
15+
- name: Check Labels
16+
id: labeler
17+
uses: jimschubert/labeler-action@v1
18+
with:
19+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: CD-develop branch
2+
3+
on:
4+
push:
5+
branches:
6+
- 'develop'
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
container: pandoc/latex
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Pushes to another repository
15+
id: push_directory
16+
uses: cpina/github-action-push-to-another-repository@main
17+
env:
18+
API_TOKEN_GITHUB: ${{ secrets.PERSONAL_TOKEN }}
19+
with:
20+
source-directory: '.'
21+
destination-github-username: guesung
22+
destination-repository-name: posepicker-for-publish
23+
user-email: gueit214@naver.com
24+
commit-message: ${{ github.event.commits[0].message }}
25+
target-branch: develop
26+
- name: Test get variable exported by push-to-another-repository
27+
run: echo $DESTINATION_CLONED_DIRECTORY
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: CD-feature branch
2+
3+
on:
4+
push:
5+
branches:
6+
- 'OZ-**'
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
container: pandoc/latex
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Pushes to another repository
15+
id: push_directory
16+
uses: cpina/github-action-push-to-another-repository@main
17+
env:
18+
API_TOKEN_GITHUB: ${{ secrets.PERSONAL_TOKEN }}
19+
with:
20+
source-directory: '.'
21+
destination-github-username: guesung
22+
destination-repository-name: posepicker-for-publish
23+
user-email: gueit214@naver.com
24+
commit-message: ${{ github.event.commits[0].message }}
25+
target-branch: feature
26+
- name: Test get variable exported by push-to-another-repository
27+
run: echo $DESTINATION_CLONED_DIRECTORY

.gitignore

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,12 @@
1-
node_modules
1+
/node_modules
2+
/.pnp
3+
.pnp.js
4+
/.next/
5+
/build
6+
.DS_Store
7+
.env
8+
9+
# Next-PWA
10+
public/sw.js
11+
public/workbox-*.js
12+
public/sw.js.map

0 commit comments

Comments
 (0)