generated from Bside-Team-Four/nextjs-starter
-
Notifications
You must be signed in to change notification settings - Fork 2
π³ FE κΈ°μ μ€ν
JaeMeDev edited this page Mar 20, 2023
·
4 revisions
- 짧μ κΈ°κ°λμ κ°μ₯ μ’μ νΌν¬λ¨Όμ€λ₯Ό λ΄κΈ° μν κΈ°μ μ€ν.
- 2λͺ μ λ©€λ²κ° λͺ¨λ μ¬μ©ν΄ λ³Έ κΈ°μ μμ£Όλ‘ μ ν.
- SEOλ₯Ό μν SSRμ μ½κ² μ¬μ©ν μ μμ.
- Next V13μ΄ μ΄μκ° λ§κΈ΄ ν΄λ
Turbopack
,next/image
κ°μ ,next/link
,/app/
λλ ν°λ¦¬ μ¬μ©λ±μ μ΄μ μ΄ μκΈ° λλ¬Έμ μ ννμμ. -
Next.js
unplugged μ΄μ λ yarn berry pnp κΈ°λ₯μ μ¬μ©ν λ buildκ° μ€ν¨νκΈ° λλ¬Έμ΄λ€. - Next.js 13 λ³κ²½μ
- Reactλ νμ λͺ¨λ κ²½νμ κ°μ§κ³ μμ.
- v18 λ³κ²½μ
- CSS in JS λ°©μ
-
Emotion
μ μ¬μ©νλ €κ³ νμ§λ§,Emotion
μ΄ μμ§ app dirμ μ§μνμ§ μμ. -
styled-coomponents
μ λ²μ μbeta
λ²μ μΌλ‘ μ¬μ©νλ μ΄μ
- server state lib.
- react queryμ μ΄λ¦μ΄ v4λΆν° TanStack Queryλ‘ λ³κ²½.
- 곡μλ¬Έμ
- client state lib.
- reduxλ₯Ό μ ννμ§ μμ μ΄μ λ client stateλ§ κ΄λ¦¬νκΈ° μν΄μ μμ±ν΄μΌν 보μΌλ¬νλ μ΄νΈκ° λ§κ³ , third party libraryκ° ν¬ν¨λμ΄μλ μλ 리λμ€ λ° λ¦¬λμ€ ν΄ν·μ μ¬μ©νκΈ°λ³΄λ¨ hook νμμΌλ‘ λμ΄μκ³ atomλ¨μλ‘ ν΄λΉ μ± μμ μ»΄ν¬λνΈμμλ§ νμν λ κ°μ Έλ€ μΈ μ μκ² νΈλ¦¬νκ² μ¬μ©ν μ μλ recoilλ₯Ό μ ν.
- κ²½νμ λ³λ‘ μμ§λ§ 곡μλ¬Έμλ₯Ό 보면 μΆ©λΆν ν΄κ²°λ κ²μ΄λΌ μκ°νκΈ°μ μ ννκ² λ¨.
- TypeScriptλ νμμ μΈ μ ν!(μ»΄νμΌ λ¨κ³μμ μ€λ₯λ₯Ό ν¬μ°©ν μ μκ³ , μλμμ±μ μ₯μ λν κ°μ§λ€. κ·Έ μΈ λ±λ± μ₯μ μ΄ λ무 λ§μ)
- Jest
- react-testing-library
- κ²¬κ³ ν νλ‘κ·Έλ¨μ λ§λ€κΈ° μν΄μλ Test Code μμ±μ νμμ΄λ€.
- ν μ€νΈμ λν μ€ν΄κ° λΆλͺ ν μ‘΄μ¬ν μ μμ§λ§, ν μ€νΈκ° κ°λ° μλλ₯Ό λ¦μΆλ€κ³ μκ°νμ§ μκ³ ν μ€νΈλ₯Ό μ§ννμ λμ μ΄μ μ΄ μλμ μΌλ‘ λ§κΈ° λλ¬Έμ Unit Test μ§ν.
- Cypress
- λμ€μ μΌλ‘ λ§μ΄ μ¬μ©νκ³ μ 보λ κ°μ₯ λ§μ
Cypress
μ ν.
- Code Convention
- airbnbκΈ°λ°μΌλ‘ μ§ννλ μλ‘ ruleμ μ ν΄μ μ¬μ©νλ©΄ μ’μ κ² κ°μ. κ°λ°λ‘ λ§μΆ°κ°λ κ²μ΄ νμν λ―.
- Git hook λꡬ
-
pre commit
,commitlint
μ μ© μμ . - Git Commit Conventionμ commitlint κΈ°λ³Έ λ£°λ‘ μ§ν.
-
CI
- lint
- unit test
- e2e test(cypress)
- code coverage(codecov)
- lighthouse
- next bundle size
- chatgpt review
-
CD
- λ°°ν¬(Vercel μ¬μ©ν κ² κ°μ)
- νλ‘ νΈμλ μλ¬ μΆμ
- react guide
- κΈ°νμλΆλ€κ³Ό μμκ° νμνλ―λ‘ μΌλ¨ 보λ₯
- react-ga4
- pwaλ?
- μ€ν μ΄ λ°°ν¬λ₯Ό μν΄μ νμμ. λ¬Όλ‘ μΉλ·° μ μ ν λ°°ν¬λ μμ§λ§, PWAλ‘ μ ν.
- next-pwa
- Project Structure
π¦ popo-client
β£ π .github
β£ π .husky
β£ π .yarn
β£ π @types
β£ π __mocks__
β£ π cypress
β£ π images
β£ π public
β£ π src
β β£ π app
β β β£ π api
β β β£ π head.tsx
β β β£ π layout.tsx
β β β£ π page.tsx
β β£ π components
β β£ π lib
β β£ π styles
β β£ π utils
β£ π .eslintrc.js
β£ π .gitignore
β£ π .lintstagedrc.json
β£ π .pnp.cjs
β£ π .pnp.loader.mjs
β£ π .yarnrc.yml
β£ π .commitlint.config.js
β£ π cypress.config.ts
β£ π jest.config.js
β£ π jest.setup.js
β£ π LICENSE
β£ π lighthouserc.js
β£ π next.config.js
β£ π package.json
β£ π README.md
β£ π tsconfig.json
β π yarn.lock