Files
tier-maker/docs/update.md

15 KiB

업데이트 로그

2026-03-26 v0.1.25

  • export 폭 추가 축소: 티어표 PNG export 보드 폭을 960px로 더 줄여 최종 저장 이미지가 지나치게 길어지지 않도록 조정

2026-03-26 v0.1.24

  • 관리자 게임 순서 드래그 정렬 추가: 상단 고정 게임 목록을 위/아래 버튼뿐 아니라 드래그로도 순서를 바꿀 수 있도록 보강
  • export 크기 재조정: 티어표 PNG export를 약 1360px 폭과 pixelRatio 1.5 기준으로 낮춰 아이콘이 과도하게 한 줄에 몰리지 않도록 수정
  • 업로드 정책 문서화: 현재 아바타 3MB, 게임/커스텀 이미지 6MB 제한이 있으며 서버 저장 전 리사이즈/압축은 아직 하지 않는다는 점을 문서에 명시

2026-03-26 v0.1.23

  • 홈 게임 정렬 규칙 변경: 일반 게임 목록은 상단 고정 순서 → 나머지 최신 생성순으로 정렬되도록 변경
  • 관리자 게임 순서 편집 추가: 관리자 게임 관리 탭에서 최대 50개의 게임을 상단 고정 목록으로 선택하고 위/아래 순서를 저장할 수 있도록 추가
  • 커스텀 티어표 진입점 변경: 홈 화면의 직접 티어표 만들기 카드를 제거하고 우측 상단 버튼형 진입점으로 변경

2026-03-26 v0.1.22

  • 무제목 저장 규칙 변경: 제목을 비워두고 저장하면 내부 저장 제목을 이름 없음 + 날짜 형식으로 생성하도록 변경
  • 무제목 안내 문구 추가: 제목 입력이 비어 있는 동안 관리자 임의 삭제 가능성을 알리는 경고 문구를 제목 입력 아래에 표시
  • export 보드 확장: 다운로드용 티어표 이미지는 빈 칸 안내 문구를 숨기고, 약 1600px 폭과 더 넉넉한 여백, 하단 작성자/날짜 메타 정보를 포함하도록 조정

2026-03-26 v0.1.21

  • 아바타 fallback 기준 통일: 티어표 목록에서 작성자 아바타 이미지가 없을 때 닉네임이 아니라 계정명 기준 첫 글자를 표시하도록 정리
  • 저장 완료 모달 추가: 에디터에서 저장 성공 시 반투명 오버레이와 확인 버튼이 있는 피드백 모달을 표시하도록 추가
  • 다운로드 이미지 여백 보강: PNG export 전용 보드에 외곽 패딩과 배경 여백을 넣어 콘텐츠가 가장자리에 붙어 보이지 않도록 조정

2026-03-19 v0.1.20

  • 게임 선택 카드 순서 조정: 홈 화면에서 일반 게임 카드를 먼저 보여주고 직접 티어표 만들기 카드는 마지막에 배치
  • 게임 카드 3열 레이아웃: PC 기준 게임 선택 화면 카드를 3열로 재구성하고, 썸네일을 16:9 비율로 통일
  • 공개 티어표 카드 3열 레이아웃: 게임 허브의 공개 티어표 목록도 PC 기준 3열 카드형으로 재배치하고 태블릿/모바일에서는 자동 줄바꿈되도록 조정

2026-03-19 v0.1.19

  • 에디터 저장 영역 재정렬: 공개 기본값을 ON으로 바꾸고, 액션 영역을 이미지 다운로드 / 삭제 / 공개 ON·OFF / 저장 흐름으로 재배치
  • 에디터 삭제 진입점 추가: 기존 티어표는 편집 화면에서 바로 삭제할 수 있도록 버튼을 추가
  • 목록 작성자 표시 개선: 공개 티어표와 내 티어표 목록의 제목 옆에 원형 아바타와 by 닉네임(없으면 계정명)을 표시
  • 목록 메타 단순화: 티어표 카드 하단 정보는 게임 ID, 저장 시각, 라벨 문구를 제거하고 최종 업데이트 시각만 간략하게 노출

2026-03-19 v0.1.18

  • 미사용 아이콘 필터 수정: 관리자 아이템 관리의 미사용 아이콘 보기 체크 상태가 실제 API 요청의 orphanOnly 파라미터로 전달되도록 수정
  • 삭제 활성화 흐름 정상화: 미사용 아이콘만 조회했을 때 usageCount = 0 항목의 개별 삭제 버튼이 의도대로 활성화되도록 정리

2026-03-19 v0.1.0

  • 초기 스캐폴딩: frontend/에 Vue3(Vite, JavaScript) 프로젝트 생성
  • 라우팅/화면 골격: 게임 선택(/), 게임 허브(/games/:gameId), 에디터(/editor/:gameId/...), 로그인(/login), 내 티어표(/me), 관리자(/admin) 라우트 추가
  • 레이아웃: 상단 네비게이션 + 기본 다크 UI 스타일 적용
  • 백엔드 골격: backend/에 Express 서버 추가(세션 기반 인증, 게임/티어표 API, 업로드 경로)
  • 저장소: 네이티브 DB 대신 파일 DB(lowdb)로 유저/게임/이미지/티어표 데이터 영속화
  • 에디터 핵심 기능(1차): 그룹 이름/순서 편집, 아이템 드래그&드롭(풀↔그룹), 커스텀 이미지 추가, 보드 PNG 다운로드, 백엔드 저장/불러오기 연결
  • 관리자 UI(1차): admin 전용 게임 추가 + 게임별 기본 이미지 업로드/목록 화면 추가
  • 버그 수정: Vite 포트 변경(5174 등) 시 백엔드 CORS가 막히는 문제 해결(로컬 5170~5179 허용)
  • 네비/권한 UX: 관리자 메뉴는 admin 로그인 시에만 노출, 로그인 대신 아바타 버튼/메뉴 노출
  • 프로필: /profile 페이지 추가, 아바타 업로드 API(/api/auth/avatar) 및 표시 지원
  • 에디터 버그 수정: 드래그 시 아이템들이 “묶음”으로 같이 움직이던 문제 해결(드롭 영역 DOM 구조/Sortable 옵션 수정), 드롭 영역 overflow/배치 레이아웃 개선

2026-03-19 v0.1.1

  • 티어표 메타데이터 개선: 제목 미입력 시 저장 시점에 게임 이름 기반 자동 제목 적용, 설명(선택) 필드 추가
  • 시간 정보 표시: 내 티어표/공개 목록에서 저장 시간(createdAt)과 업데이트 시간(updatedAt)을 시:분:초까지 표시
  • 에디터 UX 수정: 빈 티어 칸 안내 문구가 첫 드래그 배치를 가리던 문제 수정(오버레이 처리), 제목 상단에 게임 이름 표시

2026-03-19 v0.1.2

  • 로그인 UI 개선: 로그인 카드 중앙 배치, 중복 타이틀 제거, 입력 overflow 수정, 엔터로 로그인/회원가입 제출
  • 안내문 조건화: “첫 회원가입 계정은 admin” 문구는 유저가 0명일 때만 표시(/api/auth/meta)
  • 게임 목록 UI 개선: 게임 카드에 썸네일 표시, 중복 텍스트 제거, “새로운 게임 제안” 모달 추가
  • 관리자 기능 추가: 게임 썸네일 업로드 API(/api/admin/games/:gameId/thumbnail) 및 UI 추가
  • 에디터 레이아웃 개선: 등급(그룹) 라벨 칼럼 확장으로 텍스트 잘림 방지, 설명 입력 1줄, 정렬을 좌측 기준으로 조정

2026-03-19 v0.1.3

  • 배포 설정 개선: 프런트엔드의 API/정적 파일 주소 하드코딩(http://localhost:5179)을 VITE_API_ORIGIN 기반으로 통합
  • 백엔드 운영 설정 추가: CORS_ORIGINS, TRUST_PROXY, SESSION_COOKIE_SECURE, SESSION_COOKIE_SAME_SITE, SESSION_SECRET 환경변수 기반으로 NAS/리버스 프록시 배포 대응
  • 업로드 파일명 안정화: 한글 원본 파일명 기반 저장을 제거하고 ASCII 안전 파일명으로 저장하도록 변경
  • 티어표 데이터 정규화: 게임 이미지 경로가 절대 로컬 URL로 저장되지 않도록 저장/조회 시 /uploads/... 상대 경로로 정규화
  • 프로젝트 점검 결과 문서화: DB 구조, 화면-파일 매핑, 코딩 규칙, 기술 명세, 남은 위험 요소를 docs/에 신규 정리

2026-03-19 v0.1.4

  • DB 마이그레이션 준비: 런타임 저장소를 MariaDB(MySQL 호환) 기준으로 재구성하고 backend/scripts/migrate-lowdb-to-mariadb.js 마이그레이션 스크립트 추가
  • 데이터 구조 분리: 관리자 지정 아이템은 game_items, 유저 커스텀 이미지는 custom_items로 분리
  • 프로필 개선: 작성자 닉네임 저장 지원, 아바타는 파일 선택 시 미리보기만 변경되고 저장 버튼 클릭 시 실제 반영되도록 수정
  • 공개 티어표 목록 개선: 공개 티어표 목록에 작성자 닉네임(없으면 이메일) 표시
  • 관리자 UI 개편: 게임 선택 전에는 우측 관리 패널을 숨기고, 선택 후에만 썸네일/아이템 관리가 보이도록 단계형 흐름으로 수정
  • 관리자 레이아웃 수정: 새 게임 입력 필드와 카드 셀 overflow 문제를 줄이도록 box-sizing, 썸네일/아이템 카드 레이아웃 정리
  • 커스텀 아이템 저장 흐름 수정: 에디터의 커스텀 이미지는 저장 시 서버 업로드 후 티어표에 반영되도록 변경

2026-03-19 v0.1.5

  • 로컬 개발 환경 정렬: 기본 백엔드 실행 기준을 lowdb가 아닌 로컬 MariaDB로 전환
  • 개발용 인프라 추가: 루트 docker-compose.ymlMariaDB + phpMyAdmin 추가
  • 실행 문서 정리: README.md, docs/local-mariadb.md, docs/spec.md에 로컬 MariaDB 실행 절차 반영
  • Fallback 분리: backend/package.jsondev:lowdb, start:lowdb 예외 스크립트 추가

2026-03-19 v0.1.6

  • 저장소 메타데이터 정리: Git 작성자 정보를 프로젝트 계정 기준으로 통일하고, 초기 릴리스 커밋 메시지를 한국어 기준으로 재작성
  • 버전 관리 규칙 보강: 커밋 메시지 한국어 작성 및 문서 버전과 Git 태그를 함께 맞추는 규칙을 문서에 반영

2026-03-19 v0.1.7

  • AI 작업 규칙 보강: ai-rules.md에 Git 작성자 정보, 한국어 커밋 메시지, 버전/태그 동기화, 민감 정보 확인 규칙 추가
  • 관리자 화면 재구성: /admin을 좌우 병렬 구조에서 모드 선택 → 게임 선택/생성 → 선택된 게임 상세 관리 흐름으로 재구성
  • 관리자 삭제 기능 추가: 등록된 게임 자체 삭제 및 등록된 아이템 개별 삭제 기능 추가
  • 데이터 정합성 보강: 관리자 아이템 삭제 시 관련 티어표의 groups/pool 참조를 함께 정리하도록 백엔드 로직 보강

2026-03-19 v0.1.8

  • 관리자 업로드 UX 개선: 썸네일과 아이템 추가 시 파일 선택 직후 미리보기 표시
  • 썸네일 비율 정리: 관리자 썸네일 미리보기와 대표 썸네일 표시를 16:9, 약 256px 폭 기준으로 조정
  • 아이템 카드 레이아웃 개선: 아이템 목록과 추가 미리보기를 1:1 비율 기준으로 재구성하고 더 촘촘한 카드 그리드로 조정
  • 레거시 파일 역할 정리: db.json과 lowdb 관련 코드는 현재 MariaDB 기본 런타임에는 필수가 아니며, 마이그레이션/예외 fallback 용도임을 문서에 명시

2026-03-19 v0.1.9

  • MariaDB 전용 전환 완료: backend/src/db.js에서 lowdb 분기와 DB_CLIENT 기반 fallback을 제거하고 MariaDB 전용 저장 계층으로 정리
  • 레거시 파일 제거: backend/data/db.json, backend/scripts/migrate-lowdb-to-mariadb.js, dev:lowdb/start:lowdb/migrate:lowdb 스크립트 및 lowdb 의존성 제거
  • 실행 문서 정리: README.md, docs/local-mariadb.md, docs/spec.md, docs/todo.md, docs/history.md를 현재 MariaDB 전용 개발/배포 흐름 기준으로 갱신

2026-03-19 v0.1.10

  • 관리자 썸네일 액션 정리: 썸네일 버튼 문구를 썸네일 적용으로 바꾸고, 파일 선택 전에는 비활성화되도록 조정
  • 아이템 추가 폼 정리: 아이템 이름 입력 너비를 줄이고, 과한 미리보기 안내 문구를 제거해 작업 집중도를 높임
  • 반응형 미리보기 보정: 태블릿 이하 화면에서도 아이템 1:1 미리보기가 최대 192px 범위 안에서 보이도록 조정
  • 파일 재선택 버그 수정: 아이템 추가나 게임 전환 뒤 파일 입력 값을 초기화해 같은 이미지를 다시 선택해도 정상 인식되도록 수정

2026-03-19 v0.1.11

  • 관리자 레이아웃 재구성: 인라인 스타일을 제거하고, 썸네일 적용과 아이템 추가를 상단 2열 카드로 재배치한 뒤 아이템 목록은 하단 리스트로 분리
  • 직접 티어표 만들기 추가: 홈 화면에 게임 카드와 동일한 형태의 직접 티어표 만들기 진입점을 추가하고, 내부 전용 freeform 게임 레코드로 1회성 빈 티어표 저장 흐름을 지원
  • 게임 제안 흐름 제거: 홈 화면의 새로운 게임 제안 버튼/모달과 관련 프런트 API를 제거해 현재 운영 흐름에 맞게 단순화
  • 커스텀 아이템 검토 영역 추가: 관리자 페이지에서 사용자 업로드 커스텀 아이템을 목록으로 보고 다운로드할 수 있는 검토 영역과 조회 API를 추가

2026-03-19 v0.1.12

  • 전역 레이아웃 폭 정리: 앱 메인 영역의 고정 최대 너비를 제거해 배경과 페이지 폭이 잘린 듯 보이지 않도록 조정
  • 작성 권한 제한: 비로그인 사용자는 새 티어표 작성 화면으로 직접 진입할 수 없도록 하고, 공개된 티어표는 읽기 전용으로만 보이게 조정
  • 커스텀 이미지 업로드 개선: 에디터의 커스텀 이미지 추가 영역에 다중 파일 선택과 드래그 앤 드롭 업로드를 추가
  • 회원 관리 추가: 관리자 페이지에서 가입 회원 목록 조회, 이메일/닉네임/권한 수정, 계정 삭제가 가능한 관리 영역과 API를 추가

2026-03-19 v0.1.13

  • 관리자 탭 구조 정리: 관리자 페이지를 게임 관리 / 아이템 관리 / 회원 관리 탭으로 분리하고 기능별 작업 영역을 명확히 분리
  • 커스텀 아이템 조회 강화: 사용자 커스텀 아이템 목록에 파일명 검색, 50/200 단위 페이지네이션, 다운로드 흐름 추가
  • 회원 비밀번호 초기화 추가: 관리자 페이지와 API에서 회원 비밀번호를 직접 재설정할 수 있도록 기능 추가
  • 가변 티어 행 지원: 티어표 에디터에서 S~D 고정 5단이 아니라 티어 행을 직접 추가/삭제할 수 있도록 보강

2026-03-19 v0.1.14

  • 커스텀 아이템 카드 반응형 수정: 관리자 아이템 관리 탭의 커스텀 아이템 카드에서 이미지 폭을 유동값으로 조정하고, 텍스트 영역에 min-width: 0과 강제 줄바꿈 기준을 추가해 카드 바깥 overflow를 방지

2026-03-19 v0.1.15

  • 셀렉트 화살표 여백 정리: 전역 select 스타일에 커스텀 화살표 위치와 오른쪽 여백을 추가해 텍스트와 화살표가 지나치게 붙지 않도록 조정
  • 티어표 다운로드 결과 개선: TierEditorView의 이미지 저장을 Blob 다운로드 방식으로 바꾸고, 캡처 대상을 보드 영역만 포함하는 전용 export 뷰로 분리해 우측 아이템 영역과 편집용 버튼/입력 UI가 저장 이미지에 섞이지 않도록 수정

2026-03-19 v0.1.16

  • 티어표 헤더 마감 정리: 제목/설명 입력을 각각 한 줄 폭으로 정리하고, 액션 영역과 분리해 헤더 가독성을 개선
  • export 정보 보강: 이미지 저장 시 제목 아래에 설명이 함께 표시되도록 보강
  • 보드 여백/정렬 정리: 보드 내부 패딩을 늘리고, 티어 그룹 제목을 중앙 정렬로 조정해 완성본 느낌을 개선

2026-03-19 v0.1.17

  • 내 티어표 삭제 추가: 내 티어표 목록에서 작성자가 자신의 티어표를 직접 삭제할 수 있도록 삭제 버튼과 API를 추가
  • 미사용 커스텀 이미지 관리 추가: 관리자 아이템 탭에서 커스텀 이미지의 사용 횟수를 표시하고, 미사용 항목만 따로 필터링해 개별/일괄 삭제할 수 있도록 보강