[:img[]{src="https://blog.atj.sh/post-attachments/v/01960547-d4d7-7722-a2e0-0055604a51b2"}](https://www.mini-dice.com) 2022๋ 3์, **Mini Dice**๋ผ๋ ๊ฒ์์ ๋ง๋ค์ด ์ธํฐ๋ท์ ์๋น์ค๋ฅผ ์์ํ๋ค. [mini-dice.com](https://www.mini-dice.com)์์ ์ง๊ธ ๋ฐ๋ก ํ๋ ์ด ๊ฐ๋ฅํ๋ค. # ์์ค ์ฝ๋  GitHub์์ ํ์ธ ๊ฐ๋ฅ. [https://github.com/atjsh/mini-dice-v1](https://github.com/atjsh/mini-dice-v1) # mini-dice-v1 ํ ํฌ ์คํ - HTTP ๊ธฐ๋ฐ ์น ์๋น์ค - ์ ์ ์ธ์ฆ: ์์ ๊ณ์ ๊ธฐ๋ฐ OAuth, ๋๋ HCaptcha ๊ฒ์ฌ ํต๊ณผ์์ ๋ํ ์ต๋ช ๊ณ์ ์์ฑ - NestJS, Fastify๋ก ๊ตฌ์ถ๋ API ์๋ฒ. SWC ์ปดํ์ผ๋ฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋น ๋ฅธ ๋น๋ ์ํฐํฉํธ ์์ฑ. - React, Tailwind CSS, Recoil๋ก ๊ตฌ์ถ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ - PostgreSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ - AWS Lambda๋ฅผ ์ปดํจํ ์ธํ๋ผ์คํธ๋ญ์ณ๋ก ์ฌ์ฉ. ์๋น์ค ์ ์ฒด API๊ฐ ์๋ฒ๋ฆฌ์ค ํ๊ฒฝ์์ ๋์. - esbuild๋ฅผ ์๋ฒ ์ฝ๋ ๋ฒ๋ค๋ฌ๋ก ์ฌ์ฉํ์ฌ ์๋ฒ๋ฆฌ์ค ํ๊ฒฝ์ ์ต์ ํ๋ ์ํฐํฉํธ ์์ฑ - Github Actions๋ฅผ ํตํ CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ถ - ๋ชจ๋ ธ๋ฆฌํฌ ๊ตฌ์กฐ๋ก ๊ด๋ฆฌ๋๋ ์ฝ๋๋ฒ ์ด์ค # ์ ์ง๋น์ฉ ์ต์ ํ ์๋น์ค ์ด์์ ์ํ ์ธํ๋ผ์คํธ๋ญ์ณ๋ค์ ๋ชจ๋ ํ๋ฆฌ ํฐ์ด๊ฐ ์ง์๋๋ ํด๋ผ์ฐ๋ ์ปดํจํ ์ผ๋ก ํด๊ฒฐํ์๋ค. - ํ๋ฆฌ ํฐ์ด ์ฌ์ฉ ํํฉ - ๋ฐ์ดํฐ๋ฒ ์ด์ค: [Supabase](https://supabase.com/)์ SaaSํ PostgreSQL๋ฅผ ์ฌ์ฉ. - ์ปดํจํ ์ธํ๋ผ์คํธ๋ญ์ณ: AWS Lambda ์ฌ์ฉ. - ์๋ฒ ๋ก๊ทธ ๋ณด๊ด ๋ฐ ๋ชจ๋ํฐ๋ง: Amazon CloudWatch ์ฌ์ฉ. - ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํธ ๋ฑ Secret ๊ด๋ฆฌ: AWS Systems Manager Parameter Store ์ฌ์ฉ. - CI ๋ฐ CD: Github Actions ์ฌ์ฉ. - ์น ํ๋ก ํธ์๋ ํธ์คํ : Cloudflare Pages ์ฌ์ฉ. - ๋ฐฉ๋ฌธ์ ํต๊ณ ์ฐ์ถ: Google Analytics ์ฌ์ฉ. - ํ๋ฆฌ ํฐ์ด ๋ฏธ์ง์์ผ๋ก ์ธํ ์ง์ถ ํํฉ - `mini-dice.com` ๋๋ฉ์ธ ์ฃผ์ ์ ์ง๋น์ฉ: ์ฐ๊ฐ 14 USD - Amazon Route 53์ DNS ๊ด๋ฆฌ๋น์ฉ: ์ฐ๊ฐ 6 USD (์ 0.50 USD) ๋นํด๋ ๋ ์์ ์ง์ถ: ์ฐ 20 USD # ์ด๋ฏธ์ง ๋ฆฌ์์ค  Miyobi๋ผ๋ ๋ถ๊ป์ ๊ฒ์์ ์ฌ์ฉ๋ ์ด๋ฏธ์ง๋ฅผ ์ง์ ์ ์ํ๊ณ ์ ๊ณตํด์ฃผ์ จ๋ค. # ๋๋ฌ๋ณด๊ธฐ [๋์์ธ ๋ ์ดํด๋ณด๊ธฐ](https://blog.atj.sh/post/43) [mini-dice-v1 ๊ธฐ์ ํ๊ณ ์ฝ์ด๋ณด๊ธฐ](https://blog.atj.sh/post/44)