Skip to content

polaris428/clippy_nextjs

Repository files navigation

Clippy

Clippy๋Š” ํŒ€ ๋˜๋Š” ๊ฐœ์ธ์ด ๋ถ๋งˆํฌ๋ฅผ ํด๋”๋ณ„๋กœ ๋ชจ์•„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋งํฌ ๊ด€๋ฆฌ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. Google ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•ด ํด๋”๋ฅผ ๋งŒ๋“ค๊ณ  ๋งํฌ๋ฅผ ์ €์žฅํ•˜๊ฑฐ๋‚˜, ์ดˆ๋Œ€ ๋งํฌ๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ํด๋”๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ํƒœ๊ทธ ๊ธฐ๋Šฅ์€ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค.

์ฃผ์š” ๊ธฐ๋Šฅ

  • ํด๋” ๊ด€๋ฆฌ โ€“ ๋งํฌ๋ฅผ ํด๋”๋ณ„๋กœ ๋ถ„๋ฅ˜ํ•ด ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌ
  • ๋งํฌ ์ €์žฅ โ€“ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์†์‰ฝ๊ฒŒ ๋งํฌ ์ •๋ณด๋ฅผ ์ €์žฅ
  • ํŒ€์› ์ดˆ๋Œ€ โ€“ ํด๋” ์ดˆ๋Œ€ ๋งํฌ๋กœ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ์†์‰ฝ๊ฒŒ ํ˜‘์—…
  • ์–ธ์ œ ์–ด๋””์„œ๋‚˜ โ€“ ๊ธฐ๊ธฐ ์ œ์•ฝ ์—†์ด ์–ด๋””์„œ๋“  ์ ‘์† ๊ฐ€๋Šฅ
  • (์˜ˆ์ •) ํƒœ๊ทธ ๊ด€๋ฆฌ๋กœ ๋” ํŽธ๋ฆฌํ•œ ๊ฒ€์ƒ‰

๊ธฐ์ˆ  ์Šคํƒ

  • Next.js 15 / React 19 / TypeScript
  • Tailwind CSS ๊ธฐ๋ฐ˜ UI
  • Firebase Authentication
  • Prisma ORM

ํด๋” ๊ตฌ์กฐ์™€ DDD ์ ์šฉ

src/ ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” Domain-Driven Design(DDD)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๊ณ„์ธตํ˜• ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

  • app/ โ€“ Next.js ๋ผ์šฐํŠธ ํŽ˜์ด์ง€
  • application/ โ€“ Use case ๋“ฑ ์‘์šฉ ์„œ๋น„์Šค ๋กœ์ง
  • domain/ โ€“ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค์™€ ๋„๋ฉ”์ธ ๊ทœ์น™
  • infrastructure/ โ€“ Prisma ๊ตฌํ˜„์ฒด์™€ ์˜์กด์„ฑ ์ฃผ์ž… ์„ค์ •
  • presentation/ โ€“ API ๋ผ์šฐํŠธ์™€ ์ž…์ถœ๋ ฅ ๊ณ„์ธต
  • ๊ณตํ†ต UI์™€ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” components/, hooks/, lib/, services/, stores/, types/์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค.

DDD ํŒจํ„ด์„ ์ ์šฉํ•ด ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ์ธํ”„๋ผ ์ฝ”๋“œ๋ฅผ ๋ช…ํ™•ํžˆ ๋ถ„๋ฆฌํ•˜์—ฌ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค.

๋กœ์ปฌ ๊ฐœ๋ฐœ

npm install
npm run dev
npm run build

ํ…Œ์ŠคํŠธ๋Š” Jest๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ npm test ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐํฌ ์‚ฌ์ดํŠธ https://clippy-nextjs.vercel.app/ko

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published