λͺ©μ°¨
ν΄λΉ νλ‘μ νΈλ INFoUμμ μ 곡νλ λ°μ΄ν°λ₯Ό κΈ°λ°μΌλ‘ κ°μ μΆμ² μλΉμ€λ₯Ό μ 곡νλ Client νλ‘μ νΈμ λλ€.
μ£ΌμκΈ°λ₯μ λ€μκ³Ό κ°μ΅λλ€.
- κ°μμ ν€μλ μ°ΎκΈ°
- κ°μμ ν€μλλ₯Ό κΈ°λ°μΌλ‘ λ€λ₯Έ κ°μ μΆμ²
- ν€μλλ³ κ°μ 컀리νλΌ μμ±
- λ€λ₯Έ μ μ μ 컀리νλΌ μ‘°ν
- κ°μμ κ°μλ ₯, κ°μμλ£, μ€μ΅, νμ , λμ΄λμ κ°μνμ κΈμ /λΆμ λΆμ κ²°κ³Όλ₯Ό μ 곡
- Node.js v20 μ΄μ
- npm v10 μ΄μ
Node.jsμ npmμ λν λ²μ μ λ€μμ λͺ λ Ήμ΄λ‘ νμΈν μ μμ΅λλ€.
$ node -v
v22.2.0
$ npm -v
10.7.0
λ ν¬μ§ν 리 ν΄λ‘ λ° μμ‘΄μ±μ μ€μΉν©λλ€.
$ git clone
$ npm install
λ°±μλ μλ² μ£Όμ μ€μ μ μν΄ /src/services/apiService.js
νμΌμ μ΄μ΄μ baseURL
μ μμ ν©λλ€.
const baseUrl = /* λ°±μλ μλ² μ£Όμ */;
const apiService = {...};
React.jsλ νμ΄μ€λΆμμ κ°λ°ν UI λΌμ΄λΈλ¬λ¦¬λ‘, μ¬μ©μ μΈν°νμ΄μ€λ₯Ό λ§λ€κΈ° μν λΌμ΄λΈλ¬λ¦¬μ λλ€.
Styled-componentsλ CSS-in-JS λΌμ΄λΈλ¬λ¦¬λ‘, JavaScript νμΌ λ΄μμ CSSλ₯Ό μμ±ν μ μμ΅λλ€.
μ»΄ν¬λνΈλ€μ λͺ¨μλμ λλ ν 리μ λλ€.
νμ΄μ§λ€μ λͺ¨μλμ λλ ν 리μ λλ€.
λ°±μλ μλ², λͺ©μ λ°μ΄ν°μ ν΅μ νκΈ° μν μλΉμ€λ€μ λͺ¨μλμ λλ ν 리μ λλ€.
λͺ©μ μ λ°λΌ apiService.js
, mockService.js
λ‘ λλμ΄μ Έ μμ΅λλ€.
API λ§λ€ μ μλ μλν¬μΈνΈλ₯Ό λͺ¨μλμ λλ ν 리μ λλ€.
Custom Hooks Patternμ μ¬μ©νμ¬, μ»΄ν¬λνΈ λ‘μ§μ μ¬μ¬μ©νκΈ° μν λλ ν 리μ λλ€.
useFetch.js
λ λ°μ΄ν°λ₯Ό κ°μ Έμ€λ λ‘μ§μ μ¬μ¬μ©νκΈ° μν 컀μ€ν
ν
μ
λλ€.
enum, μμ, λͺ¨λΈ λ±μ λͺ¨μλμ λλ ν 리μ λλ€.
λͺ©μ λ°μ΄ν°λ₯Ό λͺ¨μλμ λλ ν 리μ λλ€.
μ΄λ―Έμ§, μμ΄μ½ λ±μ μ μ νμΌμ λͺ¨μλμ λλ ν 리μ λλ€.
νλ‘ νΈμλμ λ°λͺ¨ νμ΄μ§λ INFoU Web Siteμμ νμΈν μ μμ΅λλ€.
- λ ν¬μ§ν μ§λ₯Ό ν¬ν¬ν©λλ€.
$ git fork https://github.com/khu-bigdata-project-team-5/client.git
- ν¬ν¬ν λ ν¬μ§ν 리λ₯Ό ν΄λ‘ ν©λλ€.
$ git clone https://github.com/your-username/client.git
- λΈλμΉλ₯Ό μμ±ν©λλ€.
$ git checkout -b feature/your-feature
- λ³κ²½μ¬νμ 컀λ°ν©λλ€.
$ git commit -m "Add your feature"
- λ³κ²½μ¬νμ νΈμν©λλ€.
$ git push origin feature/your-feature
- Pull Requestλ₯Ό μμ±ν©λλ€.
Issues νμμ μλ‘μ΄ μ΄μλ₯Ό λ±λ‘ν©λλ€.
μΆκ° κΈ°λ₯ ꡬνμ λν μ΄μλ μ€ν¬λ¦° ꡬν μ΄μλ‘, λ²κ·Έ μ 보λ νΈλ¬λΈ μν μ κ΄ν μ΄μλ νΈλ¬λΈ μν μ΄μλ‘ μμ±ν©λλ€.
κ° μ΄μ νμ μ λ§λ ν νλ¦Ώμ λ°λΌ μμ±ν©λλ€.