์ฌ์ง ์์นด์ด๋ธ ํ๋ซํผ โ ์ํ๊ณผ ์ปค๋จธ์ ์์ ์ ํ๊ณณ์ ๋ด์๋ด๋ ๋์งํธ ๊ฐค๋ฌ๋ฆฌ
Yoonmin Film Archive๋ ์ฌ์ง ์๊ฐ ์ค์ฑ๋ฏผ์ ๋์งํธ/ํ๋ฆ ์ํ๊ณผ ์ปค๋จธ์ ํ๋ก์ ํธ๋ฅผ ํ๊ณณ์ ๋ชจ์ ์ ์ํ๋ ํ์คํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค.
- ๐ผ๏ธ ์นดํ ๊ณ ๋ฆฌ๋ณ ์ํ ๊ฐค๋ฌ๋ฆฌ (๋์งํธ / ํ๋ฆ / ๋์ ํจํด ๋ฑ)
- ๐ฑ ๋ชจ๋ฐ์ผ & ๋ฐ์คํฌํฑ ๋ฐ์ํ UI
- ๐ฎ ์๋ํ๋ ๋ฌธ์ ์ ์ ๋ฐ ์นด์นด์คํก ์๋ฆผ
- โ๏ธ AWS Serverless ๊ธฐ๋ฐ ๋ฐฑ์๋ ์ธํ๋ผ
| ๊ธฐ๋ฅ | ์ค๋ช |
|---|---|
| ๋ชฐ์ ํ ๊ฐค๋ฌ๋ฆฌ | Masonry ๊ทธ๋ฆฌ๋์ ๋ชจ๋ฌ ๋ทฐ๋ก ์ํ ๊ฐ์. JSON ๋ฉํ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์น์ ๊ด๋ฆฌ |
| ์ง์ฐ ๋ก๋ฉ & ์ ๋๋ฉ์ด์ | react-lazy-load-image-component์ Framer Motion์ผ๋ก ๋ถ๋๋ฌ์ด ์ ํ |
| ์๋ ๋ฌธ์ ์๋ต | ํผ ์ ์ก ์ S3 ์ ์ฅ + ์นด์นด์คํก ์ค์๊ฐ ์๋ฆผ |
| CDN ๊ธฐ๋ฐ ์ด๋ฏธ์ง ์ ๊ณต | CloudFront/S3๋ฅผ ํตํ ๋น ๋ฅธ ์ด๋ฏธ์ง ๋ก๋ฉ |
| ๊ตฌ๋ถ | ์ฌ์ฉ ๊ธฐ์ |
|---|---|
| Frontend | React 18, React Router, React-Bootstrap, Framer Motion, Axios |
| Backend (๋ก์ปฌ) | Node.js, Express, body-parser, Axios |
| Backend (Serverless) | AWS Lambda, API Gateway, S3, AWS SDK v3 |
| Infra & ๊ธฐํ | CloudFront/S3 CDN, Kakao Talk Memo API, Vercel Analytics |
yoonminFilmArchive/
โโโ FrontEnd/ # React SPA
โ โโโ public/
โ โ โโโ imageJson/ # ์ํ ๋ฉํ๋ฐ์ดํฐ JSON
โ โโโ src/
โ โโโ components/ # ๊ณตํต ์ปดํฌ๋ํธ (Navbar, Footer, Overlay)
โ โโโ config/ # CDN URL ํฌํผ
โ โโโ features/ # ํ์ด์ง๋ณ ๊ธฐ๋ฅ ๋ชจ๋
โ โ โโโ mainPage/ # ๋ฉ์ธ ํ์ด์ง
โ โ โโโ projectPage/ # ํ๋ก์ ํธ ๊ฐค๋ฌ๋ฆฌ
โ โ โโโ aboutPage/ # About ํ์ด์ง & ๋ฌธ์ ํผ
โ โ โโโ shopPage/ # Shop ํ์ด์ง (ํ์ฅ ์์ )
โ โโโ assets/ # ์ ์ ๋ฆฌ์์ค
โ
โโโ BackEnd/ # Node.js & Serverless
โ โโโ api/
โ โโโ inquiry/ # ๋ฌธ์ API (Express & Lambda)
โ โโโ kakaoTalkAlam/ # ์นด์นด์ค ์๋ฆผ API (Express & Lambda)
โ โโโ shopInfo/ # Shop ๊ด๋ จ API
โ
โโโ ProjectImageStorage/ # ์๋ณธ ์ด๋ฏธ์ง ๋ณด๊ด (๋ฐฐํฌ ๋ฏธํฌํจ)
โ
โโโ README/ # ์์ธ ๋ฌธ์ ๋ฐ ์ด๋ฏธ์ง
- Shop ํ์ด์ง ๊ธฐ๋ฅ ๊ตฌํ ๋ฐ ์ฌ๊ณ /์ฃผ๋ฌธ ๊ด๋ฆฌ ์ฐ๋
- ๋ฌธ์ API ์ธ์ฆ (Recaptcha, Rate Limiting) ์ถ๊ฐ
- Admin ์ฝ์ ๊ตฌ์ถ์ผ๋ก ์ด๋ฏธ์ง/๋ฉํ๋ฐ์ดํฐ ๊ด๋ฆฌ ์๋ํ
- Express์ Lambda ์ฝ๋ ํตํฉ์ผ๋ก ์๋ฒ๋ฆฌ์ค ์ ํ ์ผ๊ด์ฑ ๊ฐํ
- GitHub Issues: Issues
- ๋ฌธ์: yoonmin.tech@gmail.com

