Skip to content
mycreature edited this page Sep 15, 2025 · 2 revisions

๐Ÿ LOAPLAN

  • LOAPLAN์€ ์˜จ๋ผ์ธ ๊ฒŒ์ž„ Lost Ark ํ”Œ๋ ˆ์ด์–ด๋ฅผ ์œ„ํ•œ ์ž์› ๊ด€๋ฆฌ ์ง€์› ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
  • ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ฃผ๊ฐ„ ์ฝ˜ํ…์ธ ์™€ ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง๊ด€์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค์™€ ์ฐจํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค


๐Ÿš€ ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

  • ๋ชฉํ‘œ: Lost Ark ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ฝ˜ํ…์ธ  ๋ณด์ƒ์„ ์ตœ์ ํ™”ํ•˜๊ณ , ๊ณจ๋“œ์™€ ์‹œ๊ฐ„์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ํ”Œ๋žซํผ ๊ตฌ์ถ•
  • ์ฃผ์š” ์‚ฌ์šฉ์ž: Lost Ark๋ฅผ ํ”Œ๋ ˆ์ดํ•˜๋ฉฐ ์บ๋ฆญํ„ฐ๋ณ„ ์ฝ˜ํ…์ธ  ๊ณ„ํš๊ณผ ํšจ์œจ ๋ถ„์„์„ ์›ํ•˜๋Š” ์œ ์ €
  • ์ด๋ฆ„์˜ ์˜๋ฏธ: ํ–ฅํ›„ Lost Ark ํ”Œ๋ ˆ์ด ๊ณ„ํš (PLAN) ์„ ์„ธ์šธ ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š”๋‹ค๋Š” ์˜๋ฏธ์—์„œ LOAPLAN์œผ๋กœ ์„ ์ •


๐Ÿ’ก ์ฃผ์š” ํŠน์ง•

  • ๋ฐ˜์‘ํ˜• UI: ์ค‘๋‹จ์ ์„ ํ™œ์šฉํ•œ ๋ฐ์Šคํฌํƒ‘ | ํƒœ๋ธ”๋ฆฟ | ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋œ UI ์ œ๊ณต
  • REST API: REST ์•„ํ‚คํ…์ฒ˜ ์›์น™์„ ์ค€์ˆ˜ํ•œ API ์„ค๊ณ„
  • ์ „์—ญ ์ƒํƒœ๊ด€๋ฆฌ: Zustand์˜ ์ „์—ญ ์ƒํƒœ๊ด€๋ฆฌ๋กœ props-drilling ๋ฐฉ์ง€ ๋ฐ ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ๋ฐ์ดํ„ฐ ๊ณต์œ 
  • JWT ๊ธฐ๋ฐ˜ ๋กœ๊ทธ์ธ: Jsonwebtoken์„ ์ด์šฉํ•œ ์ธ์ฆ ์‹œ์Šคํ…œ ๊ตฌํ˜„ (Access token ๋ฐ Refresh token ๋ถ„๋ฆฌ)
  • ์ด๋ฉ”์ผ ์ธ์ฆ ์‹œ์Šคํ…œ: Nodemailer๋ฅผ ํ™œ์šฉํ•ด ํšŒ์›๊ฐ€์ž… ์‹œ ์ด๋ฉ”์ผ ์ธ์ฆ์ฝ”๋“œ ๋ฐœ์†ก ๊ธฐ๋Šฅ
  • GitHub Actions CI/CD: main ๋ธŒ๋žœ์น˜ ํ‘ธ์‹œ ์‹œ ์ž๋™ ๋นŒ๋“œ ๋ฐ AWS EC2 ์„œ๋ฒ„ ๋ฐฐํฌ


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

  • ๊ฒŒ์ŠคํŠธ ๋กœ๊ทธ์ธ: ํšŒ์›๊ฐ€์ž… ์—†์ด ๊ธฐ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒŒ์ŠคํŠธ ๋กœ๊ทธ์ธ
  • ์ฝ˜ํ…์ธ  ์„ ํƒ ๊ด€๋ฆฌ: ์บ๋ฆญํ„ฐ๋ณ„ ์ฃผ๊ฐ„ ์ฝ˜ํ…์ธ  ์„ ํƒ ๋ฐ ์ง„ํ–‰ ํ˜„ํ™ฉ ๊ด€๋ฆฌ
  • ์ž์› ์ˆ˜์ต ๋ถ„์„: ์ฃผ๊ฐ„ ์ฝ˜ํ…์ธ ์—์„œ ํš๋“ํ•œ ์ž์›์„ ๊ณจ๋“œ๋กœ ํ™˜์‚ฐํ•˜์—ฌ ์‹œ๊ฐํ™”
  • ์ฐจํŠธ ์ œ๊ณต: ์„ ํƒ๋œ ์ฝ˜ํ…์ธ ์˜ ๊ณจ๋“œ ์ •๋ณด๋ฅผ ์ˆ˜์‹ ๋ฐ ์ฐจํŠธ๋กœ ์ œ๊ณต
  • ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ํ”Œ๋ ˆ์ด ๊ณ„ํš: ์ฃผ๊ฐ„ ํ”Œ๋ ˆ์ด ๊ณ„ํš ๋ฐ ์ž์› ํˆฌ์ž ์ „๋žต ์ˆ˜๋ฆฝ์— ๋„์›€


๐Ÿ› ๏ธ ๊ธฐ์ˆ  ์Šคํƒ

  • Frontend: React, TypeScript, TailwindCSS, Zustand, Axios, Rechart
  • Backend: Express.js, Jsonwebtoken, Nodemailer
  • Database : MariaDB, Sequelize
  • ๋ฐฐํฌ ํ™˜๊ฒฝ: AWS EC2, Nginx
  • ๋””์ž์ธ: Figma


๐Ÿ“Œ ๊ฐœ๋ฐœ ํ˜„ํ™ฉ

  • ํ˜„์žฌ ๋ฒ„์ „: v1.0.0 Beta (์ดˆ๊ธฐ ๋ฐฐํฌ)
  • ๊ฐœ๋ฐœ๋œ ๊ธฐ๋Šฅ: โœ”๏ธ ๋žœ๋”ฉํŽ˜์ด์ง€(์ข…ํ•ฉํŽ˜์ด์ง€), โœ”๏ธ ์ฃผ๊ฐ„ ๊ณจ๋“œ ์ •๋ฆฌ, โœ”๏ธ ์‹œ๊ฐ„ ํšจ์œจ ๋ถ„์„
  • ๊ฐœ๋ฐœ ์ค‘์ธ ๊ธฐ๋Šฅ: โšก ์‹œ์„ธ ์ฐจํŠธ, โšก ๊ฐ•ํ™” ํšจ์œจ ๋ถ„์„


๐Ÿ“ ๋ผ์ด์„ ์Šค

  • ์ด ํ”„๋กœ์ ํŠธ๋Š” ๊ฐœ์ธ ํฌํŠธํด๋ฆฌ์˜ค ์šฉ๋„๋กœ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” API ๋ฐ์ดํ„ฐ ๋ฐ ๊ด€๋ จ ์ฝ˜ํ…์ธ ์˜ ์ง€์‹์žฌ์‚ฐ๊ถŒ์€ ใˆœ์Šค๋งˆ์ผ๊ฒŒ์ดํŠธ์•Œํ”ผ์ง€์— ๊ท€์†๋ฉ๋‹ˆ๋‹ค.