μ΄ λ¬Έμμλ Convey FEμ λν κ°κ΄μ μΈ μ λ³΄κ° λ΄κ²¨μμ΅λλ€.
λΉμ¦λμ€ λ‘μ§, μ½λ 컨벀μ
, CI/CD λ± λ³΄λ€ μμΈν λ΄μ©μ μλ λ§ν¬λ μν€μμ νμΈν΄μ£ΌμΈμ.
π Convey μν€ λ°λ‘κ°κΈ°
- νλ‘μ νΈ κ°μ
- ν΅μ¬ κΈ°λ₯
- λ¬Έμ
- μμνκΈ°
- κΈ°μ μ€ν
- λλ ν 리 ꡬ쑰
- μ»€λ° μ»¨λ²€μ
Conveyλ μ€λ¬Έ μ μ λ° μλ΅ μμ§μ μν μ΄ν리μΌμ΄μ μ λλ€.
μ 곡λλ 6κ°μ μ²λλ₯Ό μ¬μ©νμ¬ μ°κ΅¬μκ° μνλλλ‘ μ€λ¬Έμ§λ₯Ό 컀μ€ν
μ μν μ μμΌλ©°,
μ¬λ¬κ°μ μ€λ¬Έμ λ¬Άμ΄ νλμ μ€λ¬Έ ν¨ν€μ§λ‘ λ§λ€ μ μμ΅λλ€.
μ΄λ κ² λ§λ μ€λ¬Έ ν¨ν€μ§λ μν¬μ€νμ΄μ€μ λ±λ‘ν μ μμΌλ©°,
κ° μν¬μ€νμ΄μ€μ 루ν΄μ μμ±νμ¬ μ°κ΅¬μκ° μνλ μΌμμ μ±μ ν΅ν΄ νΌνμμκ² νΈμ μλ¦Όμ μ μ‘ν μ μμ΅λλ€.
Conveyμ ν΄λΌμ΄μΈνΈλ μΉμ μ±, λλ‘ λλ©λλ€.
- μΉμ μ€λ¬Έ μ μ, ν¨ν€μ§ μ μ, μν¬μ€νμ΄μ€ κ΄λ¦¬, λ£¨ν΄ κ΄λ¦¬, μλ΅ νμΈ λ±μ μνν μ μλ μ΄λλ―Ό ν΄μ λλ€.
- μ±μ νΈμ μλ¦Ό λ° μλ΅ μ μΆμ μνν μ μλ νΌνμ ν΄μ λλ€.
μ΄κ³³μ μΉ FEλ₯Ό μν μ μ₯μμ΄λ©°, μ΄νμ Conveyλ μΉ FEλ₯Ό μ§μΉν©λλ€.
Convey MVPμ λͺ©νλ μ 체 νλ‘μ°μ λν ν΅μ¬ κΈ°λ₯ ꡬνμ λλ€.
- 컀μ€ν μ€λ¬Έ κ΄λ¦¬ (surveys)
- λ€μμ μ€λ¬Έμ λ¬Άλ ν¨ν€μ§ κ΄λ¦¬ (packages)
- λ€μμ ν¨ν€μ§λ₯Ό λ¬Άκ³ , 루ν΄μ μ€μ νκΈ° μν μν¬μ€νμ΄μ€ κ΄λ¦¬ (workspaces)
컀μ€ν μ€λ¬Έμ λ€μ 6κ°μ μ²λλ₯Ό μ 곡ν©λλ€.
- λ¦¬μ»€νΈ (likert)
- μ λ (extent)
- λ¨μΌμ ν (single select)
- 볡μμ ν (multiple select)
- λ¨λ΅ν (short answer)
- μ₯λ¬Έν (long answer)
μ€λ¬Έμ μ²λλ₯Ό κΈ°μ€μΌλ‘ ꡬλΆλλ©°, ꡬλΆλ κ° μμμ μΉν°λΌκ³ μ§μΉν©λλ€.
- νλμ ν¨ν€μ§λ λ€μμ λλ°μ΄λλ₯Ό ν¬ν¨ν©λλ€. (package β’ parts)
- νλμ λλ°μ΄λλ λ€μμ λμ£Όμ λ₯Ό ν¬ν¨ν©λλ€. (part β’ subjects)
- νλμ λμ£Όμ λ λ€μμ μμ£Όμ (컀μ€ν μ€λ¬Έ)λ₯Ό ν¬ν¨ν©λλ€. (subject β’ surveys)
- νλμ μν¬μ€νμ΄μ€λ λ€μμ ν¨ν€μ§λ₯Ό ν¬ν¨ν©λλ€. (workspace β’ packages)
- μν¬μ€νμ΄μ€μ ν¬ν¨λ ν¨ν€μ§λ₯Ό μ¬μ©νμ¬ λ£¨ν΄μ μμ±ν μ μμ΅λλ€.
λ£¨ν΄ μ²« μμ± μ, durationκ³Ό kick-off surveyλ₯Ό μ§μ ν΄μΌ ν©λλ€.
- duration : 루ν΄μ΄ μ§νλ μ 체 μΌμ
- 4/1~4/3 λμ 루ν΄μ΄ μ§νλλ€λ©΄, durationμ 3μ λλ€.
- kick-off survey : λ£¨ν΄ μμμ κΈ°μ€μ΄ λλ μ€λ¬Έμ λλ€.
μΈλΆ λ£¨ν΄ μΆκ° μ, nthDay, time λ° packageλ₯Ό μ§μ ν΄μΌ ν©λλ€.
- nthDay : λ£¨ν΄ μμμΌλ‘λΆν° nλ²μ§Έ λ μλ¦Όμ 보λ λλ€.
- time : HH:MM νμμΌλ‘ μλ¦Όμ λ³΄λΌ μκ°μ μ λ ₯ν©λλ€.
- package : μλ΅μ μꡬν μ€λ¬Έ ν¨ν€μ§
μ΄λ° μμ΄λμμ΄μ
λ¬Έμμ
λλ€.
μ©μ΄ λ° κΈ°μ κΈ°ν κ³Όμ μ΄ λ΄κ²¨μμ΅λλ€.
(μ©μ΄λ μ€μ κ°λ° κ³Όμ μμ λ€μ λ³λλ λΆλΆμ΄ μμ΅λλ€.)
API λ¬Έμλ μ€μ¨κ±°λ₯Ό μ¬μ©ν©λλ€.
$ git clone https://github.com/PI304/Convey-Frontend
$ cd Convey-Frontend
$ yarn install$ yarn devβββ .github/workflows
βΒ Β βββ dev.yml // Dev μλ² λ°°ν¬μλνλ₯Ό μν yml
βββ pages
βββ public
βββ src
βΒ Β βββ @types
βΒ Β βΒ Β βββ api // API μμ², μλ΅ μ€ν€λ§ νμ
βΒ Β βΒ Β βββ client // API μ μΈ λͺ¨λ νμ
βΒ Β βΒ Β βββ dep // μΈλΆ λͺ¨λ νμ
μ€λ²λΌμ΄λ©
βΒ Β βββ api
βΒ Β βΒ Β βββ core // Axios μΈμ€ν΄μ€
βΒ Β βΒ Β βββ hooks // React Query Hooks
βΒ Β βΒ Β βββ promises // API μμ² Promises
βΒ Β βββ atoms // Jotai Atoms
βΒ Β βββ components
βΒ Β βββ constants
βΒ Β βββ hooks // Custom Hooks
βΒ Β βββ models // λ°μ΄ν° λͺ¨λΈ
βΒ Β βββ styles
βΒ Β βββ utils // μ νΈ ν¨μ
βββ next-env.d.ts
βββ next.config.js
βββ package.json
βββ tsconfig.json
βββ yarn-error.log
βββ yarn.lock
βββ Dockerfile // λ°°ν¬μλνλ₯Ό μν λ컀νμΌ
βββ README.md
Feature/[κΈ°λ₯μμ½]
- 맨 첫κΈμ Fλ§ λλ¬Έμλ‘, κΈ°λ₯μμ½μ μλ¬Έμλ‘ μμ±ν©λλ€.
- λμ΄μ°κΈ°λ νμ΄νμΌλ‘ ꡬλΆν©λλ€.
ex) Feature/modal-publishing
<νκ·Έ>: <μ λͺ©>
- νκ·Έμ 첫κΈμλ λλ¬Έμλ‘ μμ±ν©λλ€.
- νκ·Έλ μλμ μ ν κ²λ€λ§ μ¬μ©ν©λλ€.
Feat: μλ‘μ΄ κΈ°λ₯ μΆκ°, κΈ°λ₯ λ‘μ§ λ³κ²½
Fix: λ²κ·Έ μμ
Refactor: μ½λ 리ν©ν λ§ (κΈ°λ₯ λ³ν X)
Style: μ½λ ν¬λ§·ν
, μ½λ λ³κ²½μ΄ μλ κ²½μ°
Chore: λΉλ μ
무 μμ , ν¨ν€μ§ λ§€λμ μμ
Docs: λ¬Έμ μμ , μ£Όμ
λͺ¨λ Feature λΈλμΉλ Squash Merge ν©λλ€.


