jtodo๋ ๊ณํํ j์ฒ๋ผ ๊ฐ์ธ/๊ทธ๋ฃน์ด ํ ์ผ์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค.
์ฌ์ฉ์๋ค์ ํ ์ผ์ ์ฝ๊ฒ ์ถ๊ฐํ๊ณ ๊ด๋ฆฌํ๋ฉฐ ์๋ฃํ ์ ์์ต๋๋ค.ํนํ ํ์ ์ด ํ์ํ ๊ทธ๋ฃน ์์ ์ ๊ฒฝ์ฐ, ํ์ ๊ฐ ์ํํ ์ปค๋ฎค๋์ผ์ด์ ์ ์ํด ์๋ ๊ธฐ๋ฅ์ ์ถ๊ฐ๋ก ์ง์ํฉ๋๋ค.
๐น ์ค์๊ฐ ํ ์ผ ํํฉ ์ ๋ฐ์ดํธ
๐น ํ ์ผ ๋ด๋น์ ๋ผ๋ฒจ๋ง
๐น ํ ์ผ ๋ฌ์ฑ๋ฅ ์ ๋ฐ๋ฅธ best/worst ํ๋กํ ์ ๊ณต
๋ํ, ๊ด๋ฆฌ์ ์ผํฐ๋ฅผ ์ ๊ณตํ์ฌ ์ ์ฒด ํ์๊ณผ ๊ทธ๋ฃน์ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
๊ฐ์ธ ํ์์ ๋ชฉํ์ ํ ์ผ์ ํฌํจํด ๊ทธ๋ฃน์ ๋ชฉํ ๋ฐ ๊ฒ์๊ธ๊น์ง ์ข ํฉ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ jeil(์ ์ผ) ํ ๊ตฌ์ฑ์๊ณผ ํ๋ก์ ํธ์ ์ญํ ์ ์๊ฐํฉ๋๋ค.
์ด์ค์ |
์ต์ง์ |
์์ฃผ์ฐ |
์ ์ฌ์ |
์ ์ ์ญ |
๊น์์ง |
---|---|---|---|---|---|
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ | ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ | ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ | ๋ฐฑ์๋ ๊ฐ๋ฐ์ | ๋ฐฑ์๋ ๊ฐ๋ฐ์ | ๋์์ด๋ |
GitHub ยท LinkedIn | GitHub ยท LinkedIn | GitHub ยท LinkedIn | GitHub | GitHub ยท LinkedIn | GitHub ยท LinkedIn |
๐งโ๐ป์ด์ค์(ํ๋ฆฌ๋) - @Dragonite-Lee ๐ง email@example.com
๊ณต์ฉ : ๊ณตํต ์ปดํฌ๋ํธ, AWS๋ฐฐํฌ
์ ์ : sidebar, ์ต๊ทผ ํ ์ผ ํ์ด์ง, ๋ด ์งํ ์ํฉ ๋ณด๋, ๋
ธํธ ์๋ํฐ
์ด๋๋ฏผ : ์ด๋๋ฏผ ๊ฒ์๊ธ ๊ด๋ฆฌ
๐งโ๐ป์ต์ง์ - @ohtmm ๐ง cwd05011@gmail.com
๊ณต์ฉ : ๊ณตํต ์ปดํฌ๋ํธ
์ ์ : ๊ฐ์ธ ๋์๋ณด๋ ํ์ด์ง, ๊ทธ๋ฃน ๋์๋ณด๋ ํ์ด์ง, ๊ฐ์ธ ๋ํ
์ผ ํ์ด์ง
์ด๋๋ฏผ : ์ด๋๋ฏผ ํ์ ๊ด๋ฆฌ
๐งโ๐ป์์ฃผ์ฐ - @aajy ๐ง aajy.000@gmail.com
๊ณต์ฉ : ๊ณตํต ์ปดํฌ๋ํธ
์ ์ : ๋ก๊ทธ์ธ ๋ฐ ํ์๊ฐ์
ํ์ด์ง, ๋
ธํธ ๋ชจ์๋ณด๊ธฐ ํ์ด์ง, ๊ทธ๋ฃน ๋ํ
์ผ ํ์ด์ง
์ด๋๋ฏผ : ์ด๋๋ฏผ ๊ทธ๋ฃน ๊ด๋ฆฌ
๐ซถํจ๊ป ํ์
ํด์ฃผ์ ๐ซถ
๐งโ๐ป์ ์ ์ญ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋
๐งโ๐ป์ ์ฌ์ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋
๐งโ๐ป๊น์์ง ๋์์ด๋๋
๊ธฐ๋ฅ | ์ค๋ช | ๋น๊ณ |
---|---|---|
ํ์๊ฐ์ & ๋ก๊ทธ์ธ | ์๋น์ค ํ์ ๊ฐ์ ๋ฐ ๋ก๊ทธ์ธ | ์ด๋ฉ์ผ, ๋๋ค์ ์ค๋ณต ๊ฒ์ฌ |
๊ฐ์ธ ๋์๋ณด๋ | ํ ์ผ ๊ด๋ฆฌ, ์งํ ์ฌํญ ๊ทธ๋ํ, ๋ชฉํ ๋ชฉ๋ก | ๋ชฉํ ์์ธ ํ์ด์ง๋ก ์ด๋,ํ ์ผ์ ์๋ฃ ์ฒ๋ฆฌ ๋ฐ ์์ ์ญ์ ๊ธฐ๋ฅ, ๋ ธํธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ฐ ์์ฑ ํ์ด์ง๋ก ์ด๋ |
๊ฐ์ธ ๋ชฉํ | ํ ์ผ ์ฒ๋ฆฌ ๋ฐ ํ ์ผ ์์ , ์ญ์ ๋ ธํธ ์์ , ์์ฑ, ์์์ ์ฅ |
ํ ์ผ์ ์๋ฃ ์ฒ๋ฆฌ ๋ฐ ์์ ์ญ์ ๊ธฐ๋ฅ, ๋ ธํธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ฐ ์์ฑ ํ์ด์ง๋ก ์ด๋ |
๊ทธ๋ฃน ๋์๋ณด๋ | ๊ทธ๋ฃน ์ ๋ณด, ๊ทธ๋ฃน ๊ตฌ์ฑ์, ๊ทธ๋ฃน ๋ชฉํ | ๊ทธ๋ฃน์ฅ ๊ถํ์ธ ๊ฒฝ์ฐ ์ด๋ฆ๊ณผ ์ด๋์ฝ๋ ๋ณ๊ฒฝ ๊ธฐ๋ฅ, ๊ทธ๋ฃน์ฅ ๋ณ๊ฒฝ ๋ฐ ๊ตฌ์ฑ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ |
๊ทธ๋ฃน ๋ชฉํ | ๋ชฉํ ํ์ธ, ์งํ๋ฅ ๊ทธ๋ํ, ๋ ธํธ ๋ชจ์๋ณด๊ธฐ, ๊ทธ๋ฃน ๋ชฉํ ๋ด ๋์ ํ ์ผ ๋ชฉ๋ก | ๋ชฉํ ๊ด๋ฆฌ, ํ ์ผ ๊ด๋ฆฌ ๊ธฐ๋ฅ |
๋ ธํธ | ๋ชฉํ๋ง๋ค์ ๋ ธํธ ๋ชฉ๋ก | ๋ ธํธ ์ฌ๋ผ์ด๋, ๋ ธํธ ํธ์ง๊ธฐ๋ฅ, ์๋ ์์ ์ ์ฅ ๊ธฐ๋ฅ |
๊ธฐ๋ฅ | ์ค๋ช | ๋น๊ณ |
---|---|---|
ํ์ ๊ด๋ฆฌ | ํ์ ๋ชฉ๋ก ๊ฒ์ ๋ฐ ๊ด๋ฆฌ | ํ์ ์ด๋ฆ, ์ด๋ฉ์ผ ๊ฒ์ ํํฐ๋ง ๊ธฐ๋ฅ, ๋ชฉ๋ก ํ์ด์ง๋ค์ด์ ๊ธฐ๋ฅ, ํ์ ์์ธ ๊ด๋ฆฌ ํ์ด์ง๋ก ์ด๋ |
ํ์ ์์ธ ๊ด๋ฆฌ | ํ์ ์ ๋ณด, ์์ ๊ทธ๋ฃน ์ ๋ณด, ๊ฐ์ธ ๋ชฉํ ๋ชฉ๋ก | ํ์ ์ ๋ณด ์์ ๋ฐ ๊ทธ๋ฃน ์ ๋ณด ์์ฑ๊ธฐ๋ฅ, ๋ชฉํ๋ณ ์งํ๋ฅ ํ์ธ |
๊ทธ๋ฃน ๊ด๋ฆฌ | ๊ทธ๋ฃน ๋ชฉ๋ก ๊ฒ์ ๋ฐ ๊ด๋ฆฌ | ๊ทธ๋ฃน์ด๋ฆ, ๊ทธ๋ฃน์ฅ ๊ฒ์ ํํฐ๋ง ๊ธฐ๋ฅ, ๋ชฉ๋ก ํ์ด์ง๋ค์ด์ ๊ธฐ๋ฅ, ์์ธ ๊ทธ๋ฃน ๊ด๋ฆฌ ํ์ด์ง ์ด๋ |
๊ทธ๋ฃน ์์ธ ๊ด๋ฆฌ | ๊ทธ๋ฃน ์ ๋ณด, ๊ทธ๋ฃน ๊ตฌ์ฑ์ ๊ด๋ฆฌ,๊ทธ๋ฃน ๋ชฉํ ๋ชฉ๋ก | ๊ทธ๋ฃน ์ ๋ณด ์์ ๋ฐ ๊ทธ๋ฃน์ฅ ๋ณ๊ฒฝ ๊ธฐ๋ฅ, ๊ตฌ์ฑ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ, ๋ชฉํ๋ณ ์งํ๋ฅ ํ์ธ |
๊ฐ์ธ ๊ฒ์๊ธ ๊ด๋ฆฌ | ๊ฐ์ธ์ ๋ชฉํ ๊ฒ์๊ธ ๊ฒ์ ๋ฐ ๊ด๋ฆฌ | ๋ชฉํ ๊ฒ์๊ธ ํค์๋, ์์ฑ์ ๊ฒ์ ํํฐ๋ง, ๋ชฉ๋ก ํ์ด์ง๋ค์ด์ , ๋ชฉํ์ ํ ์ผ ์์ธ ๊ด๋ฆฌ ํ์ด์ง๋ก ์ด๋ |
๊ทธ๋ฃน ๊ฒ์๊ธ ๊ด๋ฆฌ | ๊ทธ๋ฃน์ ๋ชฉํ ๊ฒ์๊ธ ๊ฒ์ ๋ฐ ๊ด๋ฆฌ | ๋ชฉํ ๊ฒ์๊ธ ํค์๋, ๊ทธ๋ฃน ์ด๋ฆ, ์์ฑ์ ๊ฒ์ ํํฐ๋ง, ๋ชฉ๋ก ํ์ด์ง๋ค์ด์ , ๋ชฉํ์ ํ ์ผ ์์ธ ๊ด๋ฆฌ ํ์ด์ง๋ก ์ด๋ |
- ๋ชฉํ ์์ฑ ๋ฐ ๋ชฉํ ์์ธ ํ์ด์ง ํ์ธ
- ํ ์ผ ๊ด๋ฆฌ
- ์ต๊ทผ ๋ฑ๋ก ํ ์ผ ๊ฒ์ ํญ ํํฐ๋ง
- ๋ ธํธ ๋ชจ์๋ณด๊ธฐ
- ๊ทธ๋ฃน ๋์๋ณด๋
- ์ด๋๋ฏผ ์ ๋ฐ ์์
์ต์ ๊ธฐ์ ์ฌ์ฉ ๊ฒฝํ์ ์ํด ์๋ ์คํ์ ์ ํ ํ์์ต๋๋ค
- next.js 14 App Router
- tanstack query v5
- typeScript
- tailwind css
- FSD ์ํคํ ์ฒ ์ฌ์ฉ
- ๋ชจ๋ ธ๋ ํฌ ๋์ ์ ์ํ ํฐ๋ณด๋ ํฌ โ ์ด๋๋ฏผ ์๋น์ค์ ์ ์ ์๋น์ค๋ฅผ ํ๋์ ๋ ํฌ๋ก ๊ด๋ฆฌ
- ๋์ปค๋ฅผ ์ด์ฉํ EC2 ์ธ์คํด์ค ๋ฐฐํฌ
- ํ๋ก ํธ์๋: Next.js 14 (App Router), Typescript, TailwindCSS
- ๋ฐฑ์๋: ์๋ฐ ์คํ๋ง, ๋๋น: ๋ ๋์คsql, ๋ฐฐํฌ: ๋ฆฌ๋ ์ค ํ๊ฒฝ์์ aws๋์ปค
- ๋ฐฑ์๋ ํต์ : Axios
- ์ํ ๊ด๋ฆฌ: TanStack Query v5
- CI/CD: GitHub Actions, Docker
- ๋ชจ๋ ธ๋ ํฌ ๊ด๋ฆฌ: Yarn Workspaces, Turborepo
- ํ์ฌ๋ ๊ฐ๋ฐ ํจ์จ์ฑ์ ์ํด ํด๋ผ์ด์ธํธ ์ธก ์ฟ ํค๋ก ํ ํฐ์ ๊ด๋ฆฌํ๊ณ ์์ต๋๋ค.
ํฅํ ์๋น์ค ๊ท๋ชจ ํ์ฅ๊ณผ ๋ณด์ ์๊ตฌ์ฌํญ ์ฆ๊ฐ์ ๋ฐ๋ผ ํ ํฐ ๊ด๋ฆฌ๋ฅผ ์๋ฒ ์ธก์ผ๋ก ์ ํํ ๊ณํ์ ๋๋ค. - ์ค์๊ฐ ์๋ฆผ/์ฑํ ์๋น์ค๋ฅผ ์ถ๊ฐ ํ ๊ณํ์ ๋๋ค.
- ์ฃผ์ ๊ธฐ๋ฅ์ ๋ํ ๊ธฐ๋ฅ ์ ๋ฐ์ดํธ ์ ํ ์คํธ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋ ค๊ณ ํฉ๋๋ค.
: ๋ธ๋ก๊ทธ๋ก ํ๊ณ ํ ์์ ์ ๋๋ค.
- middleware๋ฅผ ์ฌ์ฉํ๋ฉด์
- Nextjs App Router๋ฅผ ์ฌ์ฉํ๋ฉด์
- axios๋ฅผ ์ฌ์ฉํ๋ฉด์ -(๋ชจ๋ ธ๋ ํฌ์ ํ ํฐ ๋ถ๊ธฐ ์ฒ๋ฆฌ)
- tanstack query๋ฅผ ์ฌ์ฉํ๋ฉด์ - (invalidate ์ฐ์ฐ์ ์ฃผ์)
- Lint๋ฅผ ์ฌ์ฉํ๋ฉด์
๐ฉโ๐ป์ค์ : ๊ท๋ชจ๊ฐ ํฐ ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ ํ์
์ ํ์ ์ค๊ฐํ๊ณ , ๊ฐ ๋จ๊ณ๋ง๋ค ๋์ ๊ณผ ์ฑ์ฅ์ด ์์ด ์ฆ๊ฑฐ์ ์ต๋๋ค
๐ฉโ๐ป์ง์ : ๊ฐ์ธ์์ ๊ทธ๋ฃน์ผ๋ก, ์ ์ ์์ ์ด๋๋ฏผ์ผ๋ก ์๋น์ค๋ฅผ ํ์ฅํจ์ ๋ฐ๋ผ, ๋ณต์ก๋๋ ๋์์ ธ ์ฝ์ง ์์์ต๋๋ค. ๊ทธ๋ฌ๋ ํ์
์ ๊ฐํ 7ํ์ ๋ง๋ ์ฆ๊ฒ๊ฒ! ๋ชจ๋ ๊ตฌํํ ์ ์์์ต๋๋ค.
๐ฉโ๐ป์ฃผ์ฐ : ๊ธฐํ๋ถํฐ ๋ฐฐํฌ๊น์ง ์งง์ผ๋ฉด์ ๊ธธ์๋ ๊ธฐ๊ฐ๋์ ์ด๋งํผ ํ๊ฒ ๋๋๊ณ (7ํ ์งฑ), ์ด๋ฒ ๊ธฐํ์ ํ์
์คํฌ๋ฆฝํธ์ ํ
์ผ์๋์ ์กฐ๊ธ ์นํด์ง ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋์ ๊ฒช์ ํธ๋ฌ๋ธ ์ํ
๋ค๋ ์ ์ ๋ฆฌํด์ ํ์๋ถ๋ค๊ณผ ํจ๊ป ๋ ์ฑ์ฅํ๊ฒ ์ต๋๋ค!
- ์ฐ์ํ ํ์ ์คํฌ๋ฆฝํธ with ๋ฆฌ์กํธ