Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[이현우] sprint5 #85

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.{html,css,js,cjs,mjs}]
indent_style = space
indent_size = 2

[*.{md,txt,log}]
indent_style = space
indent_size = 2
trim_trailing_whitespace = false
7 changes: 7 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

eslint를 사용해주셧군요!
lint는 협업에서 중요한 요소중 하나가 될것입니다. 기본적인 컨벤션 이외에도 커스텀룰들을 가지고 팀의 코드를 관리하기 용이하죠.
기회가 되면 한번 소개해보겠습니다!

"extends": [
"next/core-web-vitals",
"next/typescript",
"prettier"
]
}
133 changes: 133 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
# Created by https://www.toptal.com/developers/gitignore/api/macos,windows,visualstudiocode,react,nextjs
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,windows,visualstudiocode,react,nextjs

### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### macOS Patch ###
# iCloud generated files
*.icloud

### NextJS ###
# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# local env files
.env*.local

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts

### react ###
.DS_*
*.log
logs
**/*.backup.*
**/*.back.*

node_modules
bower_components

*.sublime*

psd
thumb
sketch

### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets

# Local History for Visual Studio Code
.history/

# Built Visual Studio Code Extensions
*.vsix

### VisualStudioCode Patch ###
# Ignore all local history of files
.history
.ionide

### Windows ###
# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp

# Windows shortcuts
*.lnk

# End of https://www.toptal.com/developers/gitignore/api/macos,windows,visualstudiocode,react,nextjs
4 changes: 4 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env sh
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

husky도 사용해주셨군요?!

husky도 협업에서 필요한 요소를 포함합니다. 또한 CI/CD를 위해서도 사용하기도하고요 이것도 기회가 되면 실제 사례를 소개해볼게요!

. "$(dirname "$0")/_/husky.sh"

npx lint-staged
10 changes: 10 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Build artifacts
.next/
.turbo/
_next/
__tmp__/
dist/
target/
compiled/
build/
coverage/
90 changes: 90 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"printWidth": 160,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": true,
"quoteProps": "as-needed",
"jsxSingleQuote": true,
"trailingComma": "all",
"bracketSpacing": true,
"arrowParens": "always",
"proseWrap": "preserve",
"endOfLine": "lf",
"singleAttributePerLine": true,
"plugins": ["@ianvs/prettier-plugin-sort-imports", "prettier-plugin-css-order", "prettier-plugin-tailwindcss"],
"importOrder": [
"^(react/(.*)$)|^(react$)",
"^(next/(.*)$)|^(next$)",
"^@vercel/(.*)$",
"<THIRD_PARTY_MODULES>",
"^@/app$",
"^@/app/providers$",
"^@/app/providers/(.*)$",
"^@/app/styles$",
"^@/app/styles/(.*)$",
"^@/app/types$",
"^@/app/types/(.*)$",
"^@/app/(.*)$",
"^@/pages$",
"^@/pages/api$",
"^@/pages/api/(.*)$",
"^@/pages/(.*)$",
"^@/widgets$",
"^@/widgets/(.*)$",
"^@/features$",
"^@/features/([^/]+)/ui$",
"^@/features/([^/]+)/ui/(.*)$",
"^@/features/([^/]+)/model$",
"^@/features/([^/]+)/model/(.*)$",
"^@/features/([^/]+)/api$",
"^@/features/([^/]+)/api/(.*)$",
"^@/features/([^/]+)/lib$",
"^@/features/([^/]+)/lib/(.*)$",
"^@/features/([^/]+)/config$",
"^@/features/([^/]+)/config/(.*)$",
"^@/features/(.*)$",
"^@/entities$",
"^@/entities/([^/]+)/ui$",
"^@/entities/([^/]+)/ui/(.*)$",
"^@/entities/([^/]+)/model$",
"^@/entities/([^/]+)/model/(.*)$",
"^@/entities/([^/]+)/api$",
"^@/entities/([^/]+)/api/(.*)$",
"^@/entities/([^/]+)/lib$",
"^@/entities/([^/]+)/lib/(.*)$",
"^@/entities/([^/]+)/config$",
"^@/entities/([^/]+)/config/(.*)$",
"^@/entities/(.*)$",
"^@/shared$",
"^@/shared/api$",
"^@/shared/api/(.*)$",
"^@/shared/config$",
"^@/shared/config/(.*)$",
"^@/shared/lib$",
"^@/shared/lib/(.*)$",
"^@/shared/ui$",
"^@/shared/ui/(.*)$",
"^@/shared/hooks$",
"^@/shared/hooks/(.*)$",
"^@/shared/types$",
"^@/shared/types/(.*)$",
"^@/shared/assets$",
"^@/shared/assets/(.*)$",
"^@/shared/(.*)$",
"^@constants/(.*)$",
"^@layouts/(.*)$",
"^@styles/(.*)$",
"^@public/(.*)$",
"^@testing-library/(.*)$",
"^@storybook/(.*)$",
"^[.]"
],
"importOrderSeparation": true,
"importOrderSortSpecifiers": true,
"importOrderBuiltinModulesToTop": true,
"importOrderMergeDuplicateImports": true,
"importOrderCombineTypeAndValueImports": true,
"importOrderParserPlugins": ["typescript", "jsx", "decorators-legacy"],
"tailwindConfig": "./tailwind.config.ts"
}
Loading
Loading