Skip to content

Latest commit

ย 

History

History
119 lines (80 loc) ยท 4.09 KB

README.md

File metadata and controls

119 lines (80 loc) ยท 4.09 KB

๐Ÿ”ฎ ์„œ๋น„์Šค ์†Œ๊ฐœ

๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ์™€ AI ์ฑ—๋ด‡ ์„œ๋น„์Šค๋ฅผ ํฌํ•จํ•œ ์›น ์„œ๋น„์Šค ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.
๐Ÿ”— ๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”— AI ์ฑ—๋ด‡ ์„œ๋น„์Šค ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ชฉ์ฐจ


๐Ÿ“„ ๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ

ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž ๊น€์ข…์—ฐ์˜ ๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ๊ด€๋ จ ๊ณต๋ถ€ ๋ฐ ์ด์Šˆ๋ฅผ ๊ณต์œ ํ•˜๊ณ ์ž ์ง์ ‘ Next.js๋กœ ๊ฐœ๋ฐœํ•œ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.
๐Ÿ”— ์‚ฌ์ดํŠธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

blog_1

โœจ ๋ธ”๋กœ๊ทธ ์ฃผ์š” ๊ธฐ๋Šฅ

  • ๐Ÿ“ ๋งˆํฌ๋‹ค์šด ๊ธฐ๋ฐ˜์˜ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ…
  • ๐Ÿ” ๊ฒŒ์‹œ๋ฌผ ๊ฒ€์ƒ‰ ๋ฐ ์ •๋ ฌ ๊ธฐ๋Šฅ
  • ๐Ÿ’– ๊ฒŒ์‹œ๋ฌผ ์ข‹์•„์š” ์‹œ์Šคํ…œ
  • ๐Ÿ’ฌ ๋Œ“๊ธ€ ์‹œ์Šคํ…œ (๋“ฑ๋ก/์ˆ˜์ •/์‚ญ์ œ)
  • ๐ŸŒ“ ๋‹คํฌ/๋ผ์ดํŠธ ๋ชจ๋“œ ์ง€์›
  • ๐Ÿ“ฑ ๋ฐ˜์‘ํ˜• ์›น ๋””์ž์ธ
  • ๐ŸŽฏ SEO ์ตœ์ ํ™”

๐Ÿ›  ๋ธ”๋กœ๊ทธ ๊ธฐ์ˆ  ์Šคํƒ

  • Frontend: Next.js, TypeScript, Styled Components
  • ์ƒํƒœ ๊ด€๋ฆฌ: Recoil
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: MongoDB
  • ๋ฐฐํฌ: Vercel
  • ์ปจํ…์ธ : React-Markdown

๐Ÿ’ก ๋ธ”๋กœ๊ทธ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์„ค๋ช…

๊ฒŒ์‹œ๋ฌผ ์‹œ์Šคํ…œ

  • ๋งˆํฌ๋‹ค์šด ๋ฌธ๋ฒ•์„ ์ง€์›ํ•˜์—ฌ ํ’๋ถ€ํ•œ ํฌ๋งทํŒ…์ด ๊ฐ€๋Šฅํ•œ ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ
  • ๊ฒŒ์‹œ๋ฌผ ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜ ๋ฐ ํƒœ๊ทธ ์‹œ์Šคํ…œ
  • ๊ฒŒ์‹œ๋ฌผ ์กฐํšŒ์ˆ˜ ๋ฐ ์ข‹์•„์š” ์ˆ˜ ํŠธ๋ž˜ํ‚น
  • ์ตœ์‹ ์ˆœ, ์ธ๊ธฐ์ˆœ ๋“ฑ ๋‹ค์–‘ํ•œ ์ •๋ ฌ ์˜ต์…˜ ์ œ๊ณต

๊ฒ€์ƒ‰ ๋ฐ ํ•„ํ„ฐ๋ง

  • ์ œ๋ชฉ, ๋‚ด์šฉ, ํƒœ๊ทธ ๊ธฐ๋ฐ˜์˜ ํ†ตํ•ฉ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ
  • ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ํ•„ํ„ฐ๋ง
  • ์‹ค์‹œ๊ฐ„ ๊ฒ€์ƒ‰์–ด ํ•˜์ด๋ผ์ดํŒ…

SEO ์ตœ์ ํ™”

  • ๋™์  ๋ฉ”ํƒ€ ํƒœ๊ทธ ์ƒ์„ฑ
  • ์‚ฌ์ดํŠธ๋งต ์ž๋™ ์ƒ์„ฑ
  • ๊ฒ€์ƒ‰ ์—”์ง„ ์ตœ์ ํ™”๋œ URL ๊ตฌ์กฐ

์„ฑ๋Šฅ ์ตœ์ ํ™”

  • ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง: Next.js์˜ SSR์„ ํ™œ์šฉํ•œ ์ดˆ๊ธฐ ๋กœ๋”ฉ ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • ์ด๋ฏธ์ง€ ์ตœ์ ํ™”: Next.js Image ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ™œ์šฉํ•œ ์ด๋ฏธ์ง€ ์ตœ์ ํ™”
  • ์Šค์ผˆ๋ ˆํ†ค UI: ๋ฐ์ดํ„ฐ ๋กœ๋”ฉ ์‹œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ๊ฐœ์„ 

๐Ÿ“„ AI ์ฑ—๋ด‡ ์„œ๋น„์Šค

Google์˜ Gemini API๋ฅผ ํ™œ์šฉํ•œ ๋Œ€ํ™”ํ˜• AI ์ฑ—๋ด‡ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„ ๋Œ€ํ™”๋Š” ๋ฌผ๋ก , ์Œ์„ฑ ์‘๋‹ต๊ณผ ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ๋ถ„์„ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
๐Ÿ”— ์‚ฌ์ดํŠธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

chat_1

โœจ AI ์ฑ—๋ด‡ ์ฃผ์š” ๊ธฐ๋Šฅ

  • ๐Ÿ’ฌ Gemini API ์ŠคํŠธ๋ฆฌ๋ฐ์„ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ๋Œ€ํ™”
  • ๐Ÿ—ฃ๏ธ Google Cloud TTS๋ฅผ ํ†ตํ•œ ์Œ์„ฑ ์‘๋‹ต
  • ๐Ÿ–ผ๏ธ ์ด๋ฏธ์ง€ ๋ถ„์„ ๊ธฐ๋Šฅ
  • ๐ŸŽต ์Œ์„ฑ ํŒŒ์ผ ์ฒ˜๋ฆฌ
  • ๐Ÿ’พ ๋ธŒ๋ผ์šฐ์ € ์ €์žฅ์†Œ๋ฅผ ํ™œ์šฉํ•œ ๋Œ€ํ™” ๋‚ด์—ญ ์œ ์ง€
  • ๐ŸŒ“ ๋‹คํฌ/๋ผ์ดํŠธ ๋ชจ๋“œ ์ง€์›
  • ๐Ÿ“ฑ ๋ชจ๋“  ๋””๋ฐ”์ด์Šค๋ฅผ ์œ„ํ•œ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ

๐Ÿ›  AI ์ฑ—๋ด‡ ๊ธฐ์ˆ  ์Šคํƒ

  • Frontend: Next.js, TypeScript, Styled Components
  • ์ƒํƒœ ๊ด€๋ฆฌ: Recoil
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: MongoDB
  • AI/ํด๋ผ์šฐ๋“œ: Google Cloud Services (Gemini API, TTS)

๐Ÿ’ก AI ์ฑ—๋ด‡ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์„ค๋ช…

์ŠคํŠธ๋ฆฌ๋ฐ์„ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ๋Œ€ํ™”

  • Gemini API์˜ ์ŠคํŠธ๋ฆฌ๋ฐ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ ์‘๋‹ต์ด ์ƒ์„ฑ๋˜๋Š” ์ฆ‰์‹œ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ
  • ํ•˜๋ฃจ 40,000 ํ† ํฐ ์ œํ•œ ๋‚ด์—์„œ ์ž์œ ๋กœ์šด ๋Œ€ํ™” ๊ฐ€๋Šฅ
  • ๋Œ€ํ™” ๋‚ด์šฉ์€ ๋ธŒ๋ผ์šฐ์ € ์ €์žฅ์†Œ์— ์ž๋™ ์ €์žฅ๋˜์–ด ์–ธ์ œ๋“ ์ง€ ์ด์ „ ๋Œ€ํ™” ํ™•์ธ ๊ฐ€๋Šฅ

์Œ์„ฑ ์‘๋‹ต ๊ธฐ๋Šฅ

Google Cloud TTS๋ฅผ ํ™œ์šฉํ•˜์—ฌ AI์˜ ํ…์ŠคํŠธ ์‘๋‹ต์„ ์ž์—ฐ์Šค๋Ÿฌ์šด ์Œ์„ฑ์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์„ฑ๋Šฅ ์ตœ์ ํ™”

  • ์‹ค์‹œ๊ฐ„ ์‘๋‹ต: ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐฉ์‹์œผ๋กœ ์‘๋‹ต ๋Œ€๊ธฐ ์‹œ๊ฐ„ ์ตœ์†Œํ™”
  • ๋ Œ๋”๋ง ์ตœ์ ํ™”: ๊ธด ๋Œ€ํ™”์—์„œ๋„ ์›ํ™œํ•œ UI ํ‘œ์‹œ
  • ํšจ์œจ์ ์ธ ์ƒํƒœ ๊ด€๋ฆฌ: Recoil์„ ํ™œ์šฉํ•œ ์ตœ์ ํ™”๋œ ์ƒํƒœ ๊ด€๋ฆฌ
  • ๋ฐ์ดํ„ฐ ์ง€์†์„ฑ: Local Storage๋ฅผ ํ™œ์šฉํ•œ ๋Œ€ํ™” ๋‚ด์—ญ ์œ ์ง€