๋๊ตฌ์๊ฒ๋ ๋ฌผ์ด๋ณด๊ณ ์ถ์๋ ์ง๋ฌธ, ์ด์ ๋ ์์ ๋กญ๊ฒ ๋งํ์ธ์! ์คํ ๋ง์ธ๋์ ํจ๊ป
์คํ ๋ง์ธ๋๋
์ต๋ช
์ผ๋ก ๊ณ ๋ฏผ์ ๋๋๊ณ , ์๋ก ์ง๋ฌธ๊ณผ ๋ต๋ณ์ ์ฃผ๊ณ ๋ฐ๋ 1์ธ ํผ๋ ๊ธฐ๋ฐ ์ปค๋ฎค๋ํฐ์
๋๋ค.
์ค๋ช
, ํ๋ก์ฐ, ์ข์์ ์์ ๋ถ๋ด ์์ด ๊ฐ์์ ์ด๋ฆ๋ง์ผ๋ก ๊ณ์ ์ ๋ง๋ค๊ณ ,
์ค์ง ์ฝํ
์ธ ์ ๋ํ์ ์ง์คํ ์ ์๋ ์ฌ๋ฆฌ์ ์์ ์ง๋ํ ์ต๋ช
SNS์
๋๋ค.
| ํญ๋ชฉ | ์ฌ์ฉ ๊ธฐ์ |
|---|---|
| ๊ฐ๋ฐ ์ธ์ด | JavaScript, HTML, CSS |
| ์ฝ๋ ์๋ํฐ | Visual Studio Code (VSC) |
| ํ๋ ์์ํฌ | React |
| ํฌ๋งคํฐ | ESLint, Prettier |
| ๋ฒ๋ค๋ง | Vite |
| ํ์ ๊ด๋ฆฌ | Git |
| ์คํ์ผ๋ง | styled-components |
| ๋ฐฐํฌ | Netlify |
| ๋ผ์ฐํ | React Router |
| ๋ฐ์ดํฐ ํจ์นญ | axios |
- React
- ์ปดํฌ๋ํธํ๋ฅผ ํตํด ์ถํ ์ ์ง๋ณด์์ ์ฌ์ฌ์ฉ์ฑ์ ๊ณ ๋ คํ์ต๋๋ค.
- ๋ฒํผ, ๋ชจ๋ฌ, ํ ์คํธ ๋ฑ ์ค๋ณต๋์ด ์ฌ์ฉ๋๋ ๋ถ๋ถ์ด ๋ง์ ์ปดํฌ๋ํธํ๋ฅผ ํตํด ๋ฆฌ์์ค ์ ์ฝ์ด ๊ฐ๋ฅํ์ต๋๋ค.
- styled-component
- props๋ฅผ ์ด์ฉํ ์กฐ๊ฑด๋ถ ์คํ์ผ๋ง์ ํ์ฉํ์ฌ ์ํฉ์ ์๋ง์ ์คํ์ผ์ ์ ์ฉ์ํฌ ์ ์์์ต๋๋ค.
- ๋น๋๋ ๋ ๊ณ ์ ํ ํด๋์ค ์ด๋ฆ์ด ๋ถ์ฌ๋์ด ๋ค์ด๋ฐ ์ปจ๋ฒค์ ์ ์ ํ๋ ๋น์ฉ์ ์ ์ฝํ ์ ์์์ต๋๋ค.
- SPA(Single Page Application) ํน์ฑ์ ๋ง๊ฒ ํ์ด์ง ์ด๋ ์ ์ ์ฒด ๋ฆฌ๋ก๋ ์์ด ์ปดํฌ๋ํธ๋ง ๋ณ๊ฒฝ๋์ด ์ฌ์ฉ์ ๊ฒฝํ์ด ํฅ์๋์์ต๋๋ค.
- BrowserRouter, Routes, Route ๋ฑ์ ํ์ฉํด ๋ช
ํํ ๋ผ์ฐํ
๊ตฌ์กฐ๋ฅผ ๊ตฌ์ฑํ ์ ์์๊ณ ,
์ ์ง๋ณด์ ์ ํ์ด์ง๋ณ ์ปดํฌ๋ํธ ์์น๋ฅผ ์ง๊ด์ ์ผ๋ก ํ์ ํ ์ ์์์ต๋๋ค. - ์ค์ฒฉ ๋ผ์ฐํ ๊ณผ URL ํ๋ผ๋ฏธํฐ, ์ฟผ๋ฆฌ์คํธ๋ง ๋ฑ์ ํตํด ๋์ ์ธ ํ์ด์ง ๊ตฌ์ฑ์๋ ์ ์ฐํ๊ฒ ๋์ํ ์ ์์์ต๋๋ค.
- SVG ํ์ผ์ ๋ฆฌ์กํธ ์ปดํฌ๋ํธ์ฒ๋ผ ์ฌ์ฉํ ์ ์์ด ์์ด์ฝ์ด๋ ์ผ๋ฌ์คํธ ๋ฑ์ ์ฌ์ฌ์ฉํ๊ธฐ ์ฌ์ ์ต๋๋ค.
- JSX ๋ฌธ๋ฒ์ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์์ด SVG์ props๋ฅผ ์ ๋ฌํ๊ฑฐ๋ ์กฐ๊ฑด๋ถ ๋ ๋๋ง์ ์ ์ฉํ๋ ๋ฑ ์ ์ฐํ UI ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ์ต๋๋ค.
- ์ ํด์ง ๊ท์น์ ๋ฐ๋ผ ์๋์ ์ผ๋ก ์ฝ๋ ์คํ์ผ์ ์ ๋ฆฌํด ์ฝ๋์ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ ์ ํ์ต๋๋ค.
- ์ฝ๋ ํ์ง ๊ด๋ฆฌ๋ eslint์, ์ฝ๋ ํฌ๋งทํ ์ prettier์ ์ผ์ํด ์ฌ์ฉํ์ต๋๋ค.
- airbnb์ ์ฝ๋ฉ ์ปจ๋ฒค์ ์ ์ฐธ๊ณ ํด ์ฌ์ฉํ๊ณ , ์์ธ ๊ท์น์ ํ์๋ค๊ณผ ํ์ํ์ต๋๋ค.
| ์ด๋ฆ | ์ญํ |
|---|---|
| main | ๋ฐฐํฌ(ํ๋ก๋์ )์ฉ ์ฝ๋. ํญ์ ์์ ๋ ์ํ ์ ์ง |
| feature/xxx | ์๋ก์ด ๊ธฐ๋ฅ, ์์ ๋จ์๋ณ ๋ธ๋์น |
| fix/xxx | ๋ฒ๊ทธ ์์ ๋ธ๋์น |
๐ฆ open-mind/
|
โโโ public/
โ โโโ images/
โโโ src/
โ โโโ assets/
โ โ โโโ icons/
โ โ โโโ images/
โ โโโ components/
โ โโโ context/
โ โโโ pages/
โ โ โโโ PostPage/
โ โ โ โโโ components/
โ โ โโโ HomePage/
โ โ โโโ ListPage/
โ โโโ styles/
โ โโโ hooks/
โ โโโ functions/
โ โโโ services/
โโโ .eslintrc.cjs
โโโ .prettierrc
โโโ vite.config.js
โโโ jsconfig.json
โโโ package.json
โโโ README.md
- ์ฌ์ฉ์๋ ์ ์ ์ฆ์ ์ด๋ฆ ์ ๋ ฅ ์ฐฝ์ ํ์ธํฉ๋๋ค.
- ๊ฐ์์ ์ด๋ฆ์ ์
๋ ฅํ๋ฉด:
- ๊ณ ์ ID์ ํจ๊ป ๊ณ์ ์ด ์์ฑ๋ฉ๋๋ค.
- ์ด๋ฆ๊ณผ ID๊ฐ ๋ธ๋ผ์ฐ์ ์ Local Storage์ ์ ์ฅ๋ฉ๋๋ค.
- ์ดํ ๋ค์ ์ด๋ฆ์ ์
๋ ฅํ๋ฉด:
- ์ ์ฅ๋ ID์ ์ด๋ฆ์ด ์ผ์นํ ๊ฒฝ์ฐ โ ๊ธฐ์กด ๊ณ์ ์ ํผ๋๋ก ์ด๋
- ์ผ์นํ์ง ์์ผ๋ฉด โ ์๋ก์ด ํผ๋ ์์ฑ ๋ถ๊ฐ
- ํด๋น ํ์ด์ง๋ก ์ด๋ํ๋ฉด '์ต์ ์'์ผ๋ก ์ฌ๋ฌ ์ฌ์ฉ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
- ์ฌ์ฉ์์ ์นด๋๋ฅผ ํด๋ฆญํ๋ฉด ํด๋น ์ฌ์ฉ์์ ํผ๋ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- ์ ๋ ฌ ์ ๋ ํฐ๋ฅผ ํตํด '์ด๋ฆ์', '์ต์ ์'์ ๊ณจ๋ผ์ ์ ๋ ฌํ ์ ์์ต๋๋ค.
- ํ๋จ์ ํ์ด์ง๋ค์ด์ ์ ํตํด ํ์ด์ง๋ฅผ ๋๊ธธ ์ ์์ต๋๋ค.
- ๋ต๋ณํ๊ธฐ๋ฅผ ํด๋ฆญํ์ ๋
- ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ๊ณ์ ์ ๋ณด๊ฐ ๋ฑ๋ก๋์ง ์์ ๊ฒฝ์ฐ [์ด๊ธฐํ๋ฉด]์ผ๋ก ๋์๊ฐ๋๋ค.
- ๊ณ์ ์ ๋ณด๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ ํด๋น ๊ณ์ ์ ํผ๋ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- ์คํฌ๋กค์ ๋ด๋ ค ๋ค๋ฅธ ์ ์ ์๊ฒ ๋ฌ๋ฆฐ ์ง๋ฌธ๋ค์ ํ์ธํ ์ ์์ต๋๋ค.
- ์ง๋ฌธ ์์ฑํ๊ธฐ๋ฅผ ํตํด ๋ค๋ฅธ ์ ์ ์๊ฒ ์ง๋ฌธ์ ๋จ๊ธธ ์ ์์ต๋๋ค.
- ๋ณต์ฌํ๊ธฐ ๋ฒํผ์ ํตํด ํ์ด์ง์ ์ฃผ์๋ฅผ ํด๋ฆฝ๋ณด๋์ ๋ณต์ฌํ ์ ์์ต๋๋ค.
- ์นด์นด์คํก, ํ์ด์ค๋ถ ๊ณต์ ํ๊ธฐ ๋ฒํผ์ ํตํด ํด๋น ์๋น์ค์์ ๊ณต์ ํ ์ ์์ต๋๋ค.
- ๋์๊ฒ ๋ฌ๋ฆฐ ์ง๋ฌธ๋ค์ ์คํฌ๋กค์ ๋ด๋ ค ํ์ธํ ์ ์์ต๋๋ค.
- ์์ง ๋ต์ ๋ฌ์ง ์์์ ๋
- ๋ฏธ๋ต๋ณ ์ํ๋ก ํ์๋ฉ๋๋ค.
- ํ ์คํธ ์์ด๋ฆฌ์ด์ ๋ต๋ณ์ ์์ฑ ํ '๋ต๋ณ์๋ฃ' ๋ฒํผ์ ํตํด ๋ต์ ๋ฌ ์ ์์ต๋๋ค.
- ๋ต์ ๋ฌ์์ ๋
- ๋ต๋ณ ์๋ฃ ์ํ๋ก ํ์๋ฉ๋๋ค.
- ๋ฏธํธ๋ณผ ๋ฒํผ์ ํตํด ๋ต๋ณ์ ์์ ํ ์ ์์ต๋๋ค.
- ๋ต๋ณ์ ๊ฑฐ์ ํ ์๋ ์์ต๋๋ค.
- ํด๋น ์ง๋ฌธ์ ์ญ์ ํ ์๋ ์์ต๋๋ค.
- ํ์ฌ ๊ณ์ ์ ์ญ์ ํ๊ณ ์ถ์ ๋
- ๋ต๋ณ ๋ชฉ๋ก ์๋จ์ ์ญ์ ํ๊ธฐ ๋ฒํผ์ ๋๋ฌ ๋์๊ฒ ๋ฌ๋ฆฐ ์ง๋ฌธ๋ค๊ณผ ํ์์ ๋ณด๋ฅผ ์ญ์ ํฉ๋๋ค.




