Files
uniare.sori.studio/docs/todo.md
zenn 2228757ea5 NAS 운영 네이밍을 uniare-*로 통일
docker-compose 서비스/컨테이너/볼륨 이름을 uniare 기준으로 맞추고, nginx 프록시 대상 및 배포 문서 예시를 함께 갱신했습니다.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 20:12:37 +09:00

3.1 KiB

할 일 및 이슈

현재 이슈

  • images/ 디렉터리가 약 1.7G까지 증가해 저장소 clone, fetch, checkout 비용이 커졌다.
  • 이미지 파일 수가 9,000+ 단위라서 카드 추가 빈도가 올라갈수록 Git 객체 수와 히스토리 부담이 계속 누적될 가능성이 높다.
  • script/navigation.js에는 현재 프로젝트에 없는 페이지(deckHistory.html, preset.html, myDatabase.html)로 이동하는 코드가 남아 있다.
  • cardList.html과 result.html 내부 스크립트 비중이 커서 기능 확장 시 유지보수 난도가 올라갈 수 있다.
  • 데이터 파일 네이밍과 샘플 파일(datas/ua99 sample.js, datas/ua99 sample mini.js) 처리 기준이 문서상 명확하지 않았다.

v4.0.0 구현 완료 항목

  • Docker API 서버 + DB (users, decks 테이블)
  • 인증: 회원가입, 로그인, JWT, 헤더 프로필 드롭다운
  • 덱 API: 저장, 조회, 공유 코드 (GET /api/v1/decks/:shareCode)
  • cardList.html: ?d= API 로드, 저장·공유 버튼
  • deckHistory.html, login.html, signup.html, preset.html
  • admin.html: 회원 목록·수정, 비밀번호 초기화
  • index.html 버전 v4.0.0

v4 후속 작업

  • NAS에서 구 컨테이너(uniare-web) 정리 후 신규 스택(uniare-web, uniare-api) 재기동 확인
  • .env 설정 및 기존 리버스 프록시 연동
  • 옆 프로젝트에 integrations/uadeck-deck-client.js 적용
  • cardList.html 인라인 스크립트 모듈 분리
  • i18n: 모달·홈 버튼·auth·덱 관리·프로필·로그인/가입 3개국어 (v4.0.0 후속)
  • 덱 즐겨찾기·필터 (내 덱·공개 덱)
  • 공개 덱: 홀드 미리보기 + 하단 즐겨찾기/불러오기 버튼
  • 내 덱: 썸네일 클릭·홀드 확대, 저장 썸네일 1200px 정규화
  • i18n: admin.html 문구

v4.0.0 최근 완료

  • profile.html: 일반 사용자 프로필 화면 (아바타·닉네임·이메일·비밀번호)
  • 헤더 드롭다운「내 프로필」링크
  • 아바타 업로드 시 PNG 리사이즈 (script/image-utils.js) — JPEG 등 형식 깨짐 방지
  • 아바타 URL updatedAt 캐시 무효화
  • 내 덱 관리: /d/코드 경로 표시 제거
  • result.html 하단 버튼 개편 + 공개 확인 모달 + 홈 이동
  • 프로필·API: 덱 저장 공개 기본값 설정

다음 작업 제안

  • 원격 저장소에서 Git LFS 업로드가 정상 완료되었는지 확인한다.
  • 협업자가 있다면 히스토리 재작성 이후 동기화 방법을 공지한다.
  • Git LFS 도입 후에도 저장소 운영 비용이 크면 이미지 저장소 분리/CDN 이전을 재검토한다.
  • cardList.html의 인라인 스크립트를 별도 JS 모듈로 분리하는 리팩터링을 검토한다.

판단 가이드

  • 신규 이미지 추가 관리가 목적이면 Git LFS 추적만으로도 충분하다.
  • 기존 clone 크기까지 줄이는 것이 목적이면 Git LFS 히스토리 마이그레이션 또는 자산 저장소 분리가 필요하다.