Skip to content

k3vin7/21MAN_front

Repository files navigation

μ„œλž Frontend

μ’‹μ•„ν•˜λŠ” μ›Ήνˆ° 세계관에 캐릭터, μ—ν”Όμ†Œλ“œ, 섀정을 μ œμ•ˆν•˜κ³ 
μž‘κ°€κ°€ κ²€ν† ν•œ κΈ°μ—¬λ₯Ό 곡식 세계관에 λ°˜μ˜ν•˜λŠ” ν˜‘μ—…ν˜• μ›”λ“œλΉŒλ”© ν”Œλž«νΌμž…λ‹ˆλ‹€.

React Vite TypeScript Tailwind CSS


μ„œλΉ„μŠ€ κ°œμš”

μ„œλžμ€ μ›Ήνˆ° 세계관을 GitHub repository처럼 κ΄€λ¦¬ν•˜λŠ” μ°½μž‘ ν˜‘μ—… μ„œλΉ„μŠ€μž…λ‹ˆλ‹€.

μž‘κ°€λŠ” μž‘ν’ˆμ˜ 세계관 repositoryλ₯Ό λ§Œλ“€κ³ , λ…μžμ™€ 곡동 μ°½μž‘μžλŠ” pull request처럼 μƒˆλ‘œμš΄ 섀정을 μ œμ•ˆν•©λ‹ˆλ‹€.
μ œμ•ˆμ€ AI 뢄석을 거쳐 λ²”μœ„, μ˜κ΅¬μ„±, 좩돌 μœ„ν—˜, κΈ°μ—¬ λ“±κΈ‰μœΌλ‘œ μ •λ¦¬λ˜κ³ , μž‘κ°€λŠ” 이λ₯Ό κ²€ν† ν•΄ 채택, μˆ˜μ • μš”μ²­, 반렀, 곡식 λ°˜μ˜μ„ κ²°μ •ν•©λ‹ˆλ‹€.

핡심 κΈ°λŠ₯

  • 세계관 repository 탐색 및 검색
  • μ›Ήνˆ° 세계관 상세 λͺ¨λ‹¬κ³Ό 곡식 README 확인
  • 캐릭터, μ—ν”Όμ†Œλ“œ, μ§€μ—­, 세계 κ·œμΉ™ λ“± λͺ¨μ§‘ μ˜μ—­ 기반 κΈ°μ—¬
  • μ°½μž‘ μ œμ•ˆ μž‘μ„± 및 AI 리뷰 ν”Œλ‘œμš°
  • μž‘κ°€μš© λŒ€μ‹œλ³΄λ“œμ—μ„œ μ œμ•ˆ κ²€ν† , 채택, 반렀, 곡식 반영
  • ν”„λ‘œν•„μ—μ„œ λ‚΄κ°€ λ§Œλ“  세계관과 곡식 반영된 κΈ°μ—¬ 확인
  • λ°±μ—”λ“œ API 연동 및 개발용 mock fallback

ν™”λ©΄ 흐름

ν™ˆ
 β”œβ”€ μΆ”μ²œ 세계관 μΉ΄λ“œ
 β”œβ”€ 검색 / νƒœκ·Έ 탐색
 └─ κΈ°μ—¬μž λž­ν‚Ή

세계관
 β”œβ”€ repository 상세
 β”œβ”€ README / λͺ¨μ§‘ μ˜μ—­ / 톡계
 └─ μ°½μž‘ μ œμ•ˆ μž‘μ„±

PR
 β”œβ”€ AI 뢄석
 β”œβ”€ κΈ°μ—¬μž 의견
 └─ 제좜

μž‘κ°€ λŒ€μ‹œλ³΄λ“œ
 β”œβ”€ μ œμ•ˆ 큐
 β”œβ”€ 좩돌 μœ„ν—˜ / AI 점수
 └─ Accept / Request Changes / Reject / Merge

기술 μŠ€νƒ

μ˜μ—­ 기술
Framework React, Vite
Language TypeScript
Routing React Router DOM
Styling Tailwind CSS
State Zustand
Server State TanStack Query
Icons lucide-react
API Fetch 기반 custom API client

ν”„λ‘œμ νŠΈ ꡬ쑰

src/
  app/                 # λΌμš°ν„°μ™€ μ•± ν”„λ‘œλ°”μ΄λ”
  assets/              # 정적 이미지
  components/          # 곡톡 UI와 도메인 μ»΄ν¬λ„ŒνŠΈ
  features/            # repository, PR, user, auth 도메인 둜직
  hooks/               # 곡톡 ν›…
  layouts/             # νŽ˜μ΄μ§€ λ ˆμ΄μ•„μ›ƒ
  lib/                 # API client, mapper, path, formatter
  mocks/               # 개발용 mock 데이터
  pages/               # 라우트 νŽ˜μ΄μ§€

μ‹œμž‘ν•˜κΈ°

npm install
npm run dev

κΈ°λ³Έ 개발 μ„œλ²„λŠ” Vite 섀정에 따라 http://localhost:5173μ—μ„œ μ‹€ν–‰λ©λ‹ˆλ‹€.

ν™˜κ²½ λ³€μˆ˜

.env.example을 μ°Έκ³ ν•΄ .envλ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

VITE_API_BASE_URL=http://127.0.0.1:8000
VITE_API_ENABLED=true
VITE_ACCESS_TOKEN_KEY=worldbuild:access-token

VITE_API_ENABLED=true이면 λ°±μ—”λ“œ APIλ₯Ό μš°μ„  μ‚¬μš©ν•©λ‹ˆλ‹€.
읽기 APIλŠ” μ‹€νŒ¨ μ‹œ mock λ°μ΄ν„°λ‘œ fallbackν•˜κ³ , 생성/μˆ˜μ •/제좜 같은 μ“°κΈ° APIλŠ” API ν™œμ„±ν™” μƒνƒœμ—μ„œ mock fallback을 ν•˜μ§€ μ•Šλ„λ‘ κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

슀크립트

npm run dev        # 개발 μ„œλ²„ μ‹€ν–‰
npm run build      # νƒ€μž…μ²΄ν¬ ν›„ ν”„λ‘œλ•μ…˜ λΉŒλ“œ
npm run preview    # λΉŒλ“œ κ²°κ³Ό 미리보기
npm run typecheck  # TypeScript νƒ€μž… 검사

μ£Όμš” 라우트

Route μ„€λͺ…
/ ν™ˆ, μΆ”μ²œ 세계관, 검색 μ§„μž…
/search 세계관 검색과 ν•„ν„°
/r/new μƒˆ 세계관 생성
/r/:repoId 세계관 상세
/r/:repoId/pr/new μ°½μž‘ μ œμ•ˆ μž‘μ„±
/r/:repoId/dashboard μž‘κ°€ μ œμ•ˆ κ²€ν†  λŒ€μ‹œλ³΄λ“œ
/u/:username μœ μ € ν”„λ‘œν•„

개발 λ©”λͺ¨

  • API pathλŠ” src/lib/apiPaths.tsμ—μ„œ κ΄€λ¦¬ν•©λ‹ˆλ‹€.
  • λ°±μ—”λ“œ 응닡은 src/lib/apiMappers.tsμ—μ„œ ν”„λ‘ νŠΈ νƒ€μž…μœΌλ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€.
  • repository, pull request, user κΈ°λŠ₯은 src/features λ‹¨μœ„λ‘œ λΆ„λ¦¬λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
  • mock λ°μ΄ν„°λŠ” λ°±μ—”λ“œκ°€ λΆˆμ•ˆμ •ν•œ 개발 μƒν™©μ—μ„œλ„ μ£Όμš” 화면이 κΉ¨μ§€μ§€ μ•Šλ„λ‘ 보쑰 역할을 ν•©λ‹ˆλ‹€.

μ„œλžμ€ μ°½μž‘μžμ˜ 세계관을 μ§€ν‚€λ©΄μ„œλ„, λ…μžμ˜ 상상을 곡식 기둝으둜 λ‚¨κΈ°λŠ” 것을 λͺ©ν‘œλ‘œ ν•©λ‹ˆλ‹€.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages