172 KiB
172 KiB
업데이트 로그
2026-04-03 v1.4.75
- 모바일에서 오른쪽 레일을 열었을 때 패널이
calc(100vw - 20px)폭의 좁은 서랍처럼 떠서 화면 전체를 채우지 못하고, 아래쪽도 어색하게 비어 보이던 부분을 조정했다. - 모바일 오른쪽 레일 overlay는
inset: 0,width: 100vw,height: 100dvh로 화면 전체를 덮는 패널처럼 열리게 바꾸고, 하단 액션/공유 버튼이 바닥에 붙거나 잘려 보이지 않도록 내부 패딩을32px + safe-area까지 늘렸다. - 프런트 프로덕션 빌드(
npm run build) 통과를 확인했다.
2026-04-03 v1.4.74
- 모바일 본문 영역에서
workspaceBody배경색이 좌우 마진 안쪽에만 칠해져 중앙에 어설픈 배경 박스가 떠 있는 것처럼 보이던 부분을 정리했다. - 모바일에서는 공통 워크스페이스 배경을 투명하게 두고, 실제 화면별 카드/섹션 배경만 남겨 덜 미완성처럼 보이도록 조정했다.
- 프런트 프로덕션 빌드(
npm run build) 통과를 확인했다.
2026-04-03 v1.4.73
- 모바일에서 왼쪽 레일 아래 메인 컨텐츠가 화면 중간부터 시작하는 것처럼 보이던 회귀를 수정했다.
- 원인은 모바일
.appShell이 1열 그리드로 바뀐 상태에서 세로 행 정의가 없어leftRail행과appMain행이 남는 높이를 나눠 가지며 위쪽이 불필요하게 늘어날 수 있던 점이었다. 모바일 그리드를auto + minmax(0, 1fr)행으로 고정하고align-content: start를 적용해 상단 레일 바로 아래에 본문이 이어지도록 보정했다. - 프런트 프로덕션 빌드(
npm run build) 통과를 확인했다.
2026-04-03 v1.4.72
- 모바일 공통 상단 헤더(
railHeader) 좌우 패딩을20px로 넓혀, 오른쪽 레일 토글 버튼과 화면 가장자리 간격이 왼쪽 유저 카드 쪽과 더 자연스럽게 맞도록 조정했다. - 모바일에서 오른쪽 레일 열기/닫기 아이콘도 왼쪽 네비게이션 토글과 같은 버튼형 카드 스타일로 보이도록
42px크기, 테두리, 배경, 둥근 모서리를 맞췄다. - 프런트 프로덕션 빌드(
npm run build) 통과를 확인했다.
2026-04-03 v1.4.71
- 모바일에서 본문 페이지나 로그인 화면 하단이 카드/버튼 바로 아래에서 끊겨 보여 답답했던 부분을 줄이기 위해, 공통 워크스페이스 본문 하단에 모바일 safe-area 기반 여백을 추가했다.
- 모바일 왼쪽 네비게이션은 유저 프로필 카드 오른쪽 토글 버튼으로 접고 펼칠 수 있게 바꾸고, 닫힘/열림 전환 시 검색창과 메뉴가 위아래로 부드럽게 스르륵 접히는 애니메이션을 추가했다.
- 모바일 진입 시 오른쪽 레일은 기본 닫힘으로 시작하고, 모바일에서 직접 오른쪽 레일을 열었을 때도 레일 하단 컨텐츠가 화면 바닥에 붙지 않도록 safe-area 여백을 더했다.
- 티어표 편집기 모바일 터치 조작에서 아이템을 짧게 탭하면 선택만 하고, 길게 누른 뒤 움직일 때 드래그가 시작되도록 Sortable 터치 시작 지연과 이동 임계값을 추가했다.
- 서버 점검 안내 문구는
서비스 내부 점검이 필요합니다.대신서비스 내부 점검중입니다.로 다듬었고, 프런트 프로덕션 빌드(npm run build) 통과를 확인했다.
2026-04-03 v1.4.70
- 저장된 티어표의
공유하기버튼이 기존preview=1편집기 주소 대신/share/editor/:topicId/:tierListId공유 전용 주소를 복사하도록 바꿨다. - 이 공유 전용 주소는 공개 티어표인 경우 해당 티어표의 제목, 설명, 썸네일을 기반으로 Open Graph/Twitter 메타 태그를 서버에서 동적으로 생성한 뒤, 실제 뷰어 화면
/editor/:topicId/:tierListId?preview=1로 즉시 이동시킨다. - 비공개 티어표이거나 주제 경로와 티어표 소속이 맞지 않는 경우에는 개별 제목/설명/썸네일을 노출하지 않고 서비스 기본 공유 메타를 사용하도록 제한했다.
- 운영 프런트 Nginx에서
/share/경로를 백엔드로 프록시하도록 추가해, 카카오톡/디스코드/X 같은 크롤러가 JS 실행 전에 공유 메타를 먼저 읽을 수 있게 했다. backend/index.js,backend/src/routes/share.js문법 검사와 프런트 프로덕션 빌드(npm run build)까지 통과하는 것을 확인했다.
2026-04-03 v1.4.69
- 티어표 편집 화면의 아이템 검색에서 한글 아이템명이 검색어와 눈으로는 같아 보여도 내부 유니코드 정규형 차이 때문에 일부 항목이 매칭되지 않을 수 있던 문제를 보강했다.
- 검색어와 아이템 라벨을 비교하기 전에
NFC로 정규화하도록 바꾸고, 커스텀 이미지 파일명에서 기본 라벨을 만들 때도 같은 정규화를 거쳐 한글 조합형 차이로 검색이 빗나가는 상황을 줄였다. - 프런트 프로덕션 빌드(
npm run build)까지 통과하는 것을 확인했다.
2026-04-03 v1.4.68
- 티어표 편집 화면에서 아이템을 우클릭해도 브라우저 기본 컨텍스트 메뉴가 먼저 떠서
아이템 복제메뉴를 누르기 어려울 수 있던 부분을 보강했다. - 기존에는 각 아이템 카드의
@contextmenu.prevent에 주로 의존했지만, 이제는window캡처 단계에서[data-item-id]대상 우클릭을 먼저 잡아 기본 메뉴를 막고 커스텀 복제 메뉴를 열도록 바꿨다. - 아이템 썸네일 이미지에도
draggable="false"를 명시해, 이미지 자체의 기본 드래그/컨텍스트 동작이 편집 조작보다 앞서는 상황을 줄였다.
2026-04-03 v1.4.67
- 관리자 아이템 관리에서 프로필 아바타가
전체 이미지와프로필 이미지필터에 보이지 않을 수 있던 문제를 수정했다. - 원인은
image_assets의 같은src가 템플릿 아이템이나 사용자 아이템에서도 쓰이는 경우, 자산 카드 생성 단계에서 해당src를 무조건 제외하던 필터였다. 이제는users.avatar_src나 각종 썸네일 참조로 실제 사용 중인 자산이면 같은 이미지가 다른 아이템에 재사용되더라도 자산 카드도 함께 유지한다. - 로컬 MariaDB를 새로 만든 뒤
프로필 아바타와 사용자 아이템이 같은src를 공유하는 테스트 데이터를 직접 넣고,listCustomItems({ filterMode: 'avatar' })와filterMode: 'all'결과에 프로필 자산 카드가 포함되는 것까지 확인했다.
2026-04-03 v1.4.66
- 티어표 편집 화면에서 보드 위 아이템이나 미사용 아이템 풀의 아이템을 우클릭하면
아이템 복제메뉴가 뜨고, 선택한 아이템의 이미지/이름/출처를 유지한 새 복제본을 미사용 풀 맨 앞에 추가하도록 구현했다. - 기존 아이템 ID를 그대로 다시 쓰면 같은 항목을 서로 다른 칸에 동시에 둘 수 없으므로, 복제 시
dup-...새 ID를 발급해 원본과 복제본을 별도 아이템 인스턴스로 저장하도록 정리했다. - 우클릭 메뉴는 메뉴 밖 클릭, 다른 곳 우클릭, 스크롤, 창 포커스 이탈 시 닫히도록 했고, 화면 가장자리에서는 메뉴가 뷰포트 밖으로 나가지 않게 좌표를 보정했다.
2026-04-03 v1.4.62
- UGREEN NAS 운영 배포 문서에
git pull origin main후 일반 재빌드하는 절차와, 운영 데이터를 전부 버리고docker compose ... down -v로 MariaDB/업로드/세션 볼륨까지 초기화한 뒤 새로up -d --build하는 절차를 분리해서 추가했다. - DB만 비우고 싶을 때
tmaker_mariadb_data볼륨만 삭제하는 방법과, 실제 볼륨 이름이 다를 수 있으니docker volume ls | grep tmaker로 먼저 확인하는 안내도 함께 적었다. - 새로 초기화한 운영 DB로 올리면 현재 스키마가 다시 생성되고 시스템 템플릿은
freeform한 건만 들어간다는 점을 배포 문서에 명시했다.
2026-04-03 v1.4.61
- 템플릿 공개 URL과 내부 참조를 분리해,
topics.id는 서버가 자동 생성하는 랜덤 내부 ID로 두고 운영자가 직접 관리하는 공개 주소는topics.slug로 저장하도록 바꿨다. - 공개 주제/에디터 경로는
slug를 우선 사용하고, 백엔드는/api/topics/:topicId,/api/tierlists/public?topicId=..., 티어표 저장/템플릿 요청의topicId입력을slug또는 내부 ID에서 실제 템플릿 레코드로 해석한 뒤 내부topic_id를 저장하도록 정리했다. - 관리자 템플릿 생성 모달과 템플릿 설정 카드에서 내부 ID 대신
템플릿 이름 + slug를 입력/수정할 수 있게 바꾸고,slug중복/형식 오류는이미 사용 중인 템플릿 slug입니다.,slug는 영문 소문자, 숫자, 하이픈만 사용할 수 있어요.처럼 원인 문구를 분리했다. - 새 DB를 처음 만들 때는 시스템 전용
freeform템플릿만 생성하고, 예전에 기본 시드로 넣던 빈 예시 템플릿example-topic,another-topic과 샘플 아이템은 더 이상 자동 생성하지 않도록 제거했다. - 로컬 MariaDB를 한 번 비운 뒤 새 스키마로
ensureData()를 실행해, 초기topics가[{ id: "freeform", slug: "freeform", name: "직접 티어표 만들기" }]한 건만 생성되는 상태까지 확인했다.
2026-04-03 v1.4.60
- 샤딩 구조가 생기기 전에 이미
/uploads/assets/<파일명>.webp로 평면 저장된 기존 최적화 이미지도/uploads/assets/<앞2글자>/<파일명>.webp로 옮길 수 있도록 일회성 마이그레이션 스크립트backend/scripts/migrate-flat-assets-to-sharded.js를 추가했다. - 이 스크립트는
backend/uploads/assets루트에 남아 있는 실제 평면 파일을 기준으로 샤딩 폴더로 이동하고,image_assets.src와 사용자 아바타/주제 썸네일/템플릿 아이템/사용자 아이템/티어표 JSON/템플릿 요청 JSON 참조도 같은 새 경로로 일괄 치환한다. - 로컬 실행용
npm --prefix backend run images:shard-assets스크립트를 추가해, 기존 100여 개 수준의 평면 자산도 별도 수작업 없이 한 번에 정리할 수 있게 했다.
2026-04-03 v1.4.59
- 최근 업로드된 최적화 이미지가
/uploads/assets/<파일명>.webp처럼 하위 폴더 없이 저장되면서,썸네일 이미지 / 프로필 이미지필터가 경로 문자열만으로 자산 종류를 판별하지 못해 비어 보일 수 있던 문제를 고쳤다. - 관리자 아이템 목록 생성 시
users.avatar_src,topics.thumbnail_src,tierlists.thumbnail_src,template_requests.thumbnail_src_snapshot을 역으로 모아 해당src가 프로필 이미지인지 썸네일 이미지인지 먼저 판별하고,thumbnail/avatar필터는sourceType이 아니라 이 실제 참조 역할(assetKind) 기준으로 걸리도록 보정했다. - 신규 최적화 이미지 저장은 한 폴더에 무한정 쌓이지 않도록 파일 ID 앞 2글자 기준으로
/uploads/assets/ab/<파일명>.webp처럼 1단계 샤딩 디렉터리를 사용하게 바꿨다. 기존에 이미 저장된/uploads/assets/<파일명>.webp평면 경로는 그대로 유지해 과거 이미지 링크가 깨지지 않게 했다.
2026-04-03 v1.4.58
- 작성자 프로필 화면 상단 헤더가
Author + 닉네임 + @accountName을 다시 보여주면서, 바로 아래 프로필 카드의 아바타/닉네임 정보와 거의 같은 내용이 반복되던 구성을 정리했다. - 상단 헤더는 공통 제목
사용자 프로필과 안내 문구로 바꾸고, 실제 닉네임은 아래 프로필 카드에서만 보여주도록 나눠 화면의 정보 역할이 겹치지 않게 했다. - 이메일 앞부분에서 파생된
@accountName은 사용자가 직접 설정한 핸들이 아니라서 오히려 “내가 입력한 적 없는 계정명”처럼 느껴질 수 있으므로, 프로필 화면의 시각 노출에서는 제거했다.
2026-04-03 v1.4.57
- 관리자 아이템 관리 필터를
전체 이미지 → 아이템(템플릿 + 사용자) → 템플릿 아이템 → 사용자 아이템 → 썸네일 이미지 → 프로필 이미지 → 미사용 아이템순서로 다시 정리해, 전체 조회와 실제 아이템 검수 흐름이 더 직관적으로 이어지게 맞췄다. - 기본 필터는 계속
아이템(템플릿 + 사용자)를 유지하되, 썸네일과 프로필 이미지는 각각filter=thumbnail,filter=avatar로 분리 조회할 수 있게 백엔드 필터 enum과 자산 분류 값을 확장했다. - 보관 자산 배지 문구도
/uploads/assets/topics/경로는썸네일 이미지, 사용자 업로드 항목은사용자 아이템, 템플릿 기본 항목은템플릿 아이템으로 맞춰관리자 템플릿처럼 실제 의미와 어긋나는 표현이 남지 않도록 정리했다. 미사용 아이템은 계정 탈퇴로 같이 삭제된 항목이 아니라, 사용자 아이템 레코드는 남아 있지만 저장 티어표/템플릿에서 더 이상 참조하지 않는 항목이라는 의미가 드러나도록 통계 라벨과 일괄 삭제 버튼 문구를 다시 정돈했다.
2026-04-03 v1.4.56
- 관리자 아이템 관리에서
/uploads/assets/...아래의 보관 이미지가 템플릿 기본 아이템이 아닌데도 모두관리자 템플릿배지로 표시되던 분류를 정리했다. - 보관 이미지 자산은 이제
asset출처로 분리하고, 경로에 따라프로필 아바타,티어표 썸네일,템플릿 썸네일,보관 자산배지가 붙도록 바꿔 반복 사용 아이템과 1회성/관리용 이미지를 구분해서 볼 수 있게 했다. - 아이템 관리 필터 기본값을
아이템만 (템플릿+사용자)로 바꾸고,썸네일·프로필 이미지,미사용 썸네일·프로필 이미지필터를 따로 제공해 기본 화면에서는 실제 아이템만 먼저 검수할 수 있게 했다. - 아이템 관리 상단의
미사용통계가 프로필/썸네일 같은 자산까지usageCount=0으로 같이 세면 잘못된 숫자처럼 보일 수 있으므로,미사용 사용자 아이템이라는 라벨로 바꾸고 실제 사용자 업로드 아이템 중 템플릿 연결과 사용 횟수가 모두 없는 항목만 세도록 보정했다.
2026-04-03 v1.4.55
- 관리자 회원 카드의
최근 활동이 실제로는 마지막 접속이 아니라 작성 티어표의 마지막 수정 시각 기준이었으므로, 라벨을최근 콘텐츠 활동으로 분명하게 바꾸고마지막 접속일을 별도 줄로 추가해 두 의미를 분리했다. - 백엔드
users에last_login_at을 추가하고, 로그인/이메일 인증 완료/비밀번호 재설정 완료/세션 기반/api/auth/me확인 시 해당 시각을 갱신하도록 보강했다. 기존 계정은 마이그레이션 시created_at으로 1차 채워 오래된 계정도 빈 값 없이 정렬할 수 있게 했다. - 관리자 회원 목록 정렬에
마지막 접속순을 추가하고, 회원 카드의회원 정보 수정옆에프로필 보기버튼을 붙여 해당 유저의/users/:userId공개 프로필 화면으로 바로 이동할 수 있게 했다.
2026-04-03 v1.4.54
- 관리자
전체 티어표 관리카드에 받은 즐겨찾기 수를 표시하고, 우측 운영 패널에최근 수정순 / 최근 생성순 / 즐겨찾기 많은 순정렬과최소 즐겨찾기 수필터를 추가해, 운영자가 추천 후보가 될 만한 인기 티어표를 더 빨리 찾을 수 있게 했다. - 관리자 회원 관리 카드에
팔로워 수와받은 즐겨찾기 수를 추가하고, 정렬 기준에도팔로워 많은 순,받은 즐겨찾기 많은 순을 붙여 어떤 작성자가 핵심 기여자인지 운영자가 더 쉽게 파악할 수 있게 했다. - 이메일 인증과 비밀번호 재설정 메일이 들어간 뒤에는 운영자가 회원 비밀번호를 직접 바꾸는 버튼이 평소 화면에 드러나 있을 필요가 작다고 보고, 회원 카드의
비밀번호 초기화버튼과 해당 모달 UI를 숨겼다. 서버의 관리자 비밀번호 변경 API는 비상 상황용 최후 수단으로 남겨두되, 일반 운영 동선에서는 직접 조작처럼 보이지 않도록 정리했다.
2026-04-03 v1.4.53
- 티어표 복사 버튼이 타인 티어표에서만 보이도록 묶여 있어 본인 티어표에서는 숨겨지던 문제를 고쳐, 저장된 본인 티어표도
복사본 만들기로 새 복사본을 만들 수 있게 복구했다. - 본인 티어표를 편집 중 저장하지 않은 변경이 있는 상태로 복사본을 만들면 화면에 보이는 최신 수정 내용이 빠질 수 있었으므로, 복사 실행 직전에 현재 수정본을 먼저 저장한 뒤 복사본을 생성하도록 보정했다.
- 작성자 프로필 화면(
/users/:userId)과 팔로우 피드 화면(/following)을 추가하고, 백엔드에user_follows테이블과 팔로우/언팔로우/작성자 공개 티어표/팔로잉 피드 API를 붙였다. - 티어표 편집/뷰어 우측 패널에
작성자 프로필 보기진입점을 추가하고, 왼쪽 내비게이션에도팔로우 피드메뉴를 노출해 팔로우한 작성자의 공개 티어표를 따로 모아 볼 수 있게 했다. - 프런트 HTML 메타 제목/설명에서도
게임 템플릿표현을템플릿기준 문구로 맞춰, 실제 서비스가 특정 게임만 다루는 것처럼 보이지 않도록 한 번 더 정리했다.
2026-04-03 v1.4.52
- 관리자 전체 티어표 카드 컴포넌트의
추천 지정 / 추천 해제버튼과추천 노출중배지, 추천 개수 통계 표시가 실제 릴리스 커밋에 함께 포함되도록 누락 파일을 다시 묶었다.
2026-04-03 v1.4.51
- 주제별 공개 티어표 목록을
추천 티어표와전체 공개 티어표로 분리해, 관리자가 추천 지정한 글은 상단 강조 섹션에 먼저 보여주고 아래 일반 목록에서는 중복 노출되지 않도록 정리했다. - 관리자
전체 티어표 관리카드에추천 지정 / 추천 해제버튼과추천 노출중배지를 추가하고, 상단 통계에도 추천 개수를 함께 표시하도록 보강했다. - 백엔드
tierlists에is_featured,featured_at,featured_by를 추가하고, 공개 목록 API가 추천 티어표 최대 16개와 일반 공개 티어표 목록을 분리해서 내려주도록 확장했다. - 비공개 티어표를 추천으로 지정하려는 경우는 서버에서
public_tierlist_required로 차단하고, 이미 추천된 글을 비공개로 전환하면 추천 상태도 자동 해제되도록 맞췄다.
2026-04-03 v1.4.50
- 설정 화면 메인 영역이
max-width: 620px단일 컬럼으로 고정되어 넓은 화면에서 오른쪽 공간이 많이 비어 보였으므로, 프로필 정보 카드와 비밀번호 변경 카드를 좌우 2열 그리드로 나누고 좁은 화면에서만 1열로 내려가도록 레이아웃을 재정리했다. - 왼쪽 카드는 아바타/닉네임/이메일/로그아웃/프로필 저장을, 오른쪽 카드는 현재 비밀번호 확인과 새 비밀번호 저장을 담당하게 분리해, 설정 화면의 정보 묶음이 더 명확하게 읽히도록 맞췄다.
2026-04-03 v1.4.49
- 설정 화면에 현재 비밀번호 확인 후 새 비밀번호를 직접 저장하는
비밀번호 변경섹션을 추가하고, 백엔드에는 로그인 사용자용POST /api/auth/passwordAPI를 붙였다. - 프로필 닉네임 저장 실패가 모두
프로필 저장에 실패했어요.로 뭉뚱그려 보이던 부분을 고쳐, 중복 닉네임은닉네임이 이미 사용 중이에요., 예약어 닉네임은사용할 수 없는 닉네임이에요.처럼 회원가입 화면과 같은 맥락의 원인 안내로 분리했다. - 로그인한 상태로
login?resetToken=...비밀번호 재설정 링크를 열면 기존 로그인 감시가 바로 내 티어표 화면으로 보내버릴 수 있었으므로, 인증/재설정 토큰이 있는 동안에는 자동 리다이렉트를 멈추고 재설정 입력 화면을 우선 보여주도록 보정했다.
2026-04-03 v1.4.48
- 로컬 백엔드도
.env.production을 읽는 구조가 되면서 이메일 인증/비밀번호 재설정 링크의APP_ORIGIN이 운영 도메인으로 잡히던 문제를 막기 위해,backend의dev/start스크립트에서 로컬 실행 시APP_ORIGIN=http://localhost:5173을 먼저 주입하도록 분리했다. - 이로써 로컬 개발에서는 인증 메일 링크가
localhost:5173으로 열리고, 상용 Docker 배포에서는docker-compose.prod.yml의APP_ORIGIN=https://tmaker.sori.studio를 그대로 사용하도록 환경이 구분된다.
2026-04-03 v1.4.47
- 로컬 개발 서버를
npm run dev:backend로 띄울 때 루트.env.production의SMTP_*값이 자동으로 들어가지 않아 일반 회원가입이mail_not_configured503으로 실패할 수 있었으므로, 백엔드 엔트리에서dotenv로 루트.env.production을 먼저 로드하도록 보강했다. - 이 변경으로 Docker Compose 운영 환경은 기존 컨테이너 환경변수를 그대로 쓰면서, 로컬 개발 서버도 같은
.env.production의 Gmail SMTP 설정을 읽어 이메일 인증/비밀번호 재설정 메일 발송을 테스트할 수 있게 됐다.
2026-04-03 v1.4.46
- 운영용
.env.production에는 Git에 올리지 않는 로컬 비밀값을 유지한 채, Gmail SMTP 발송에 필요한APP_ORIGIN,SMTP_HOST,SMTP_PORT,SMTP_SECURE,SMTP_USER,SMTP_PASS,SMTP_FROM항목을 추가했다. - Git에 추적되는
.env.production.example에도 같은 SMTP 환경변수 예시를 추가해, 실제 배포 설정에서 어떤 키를 채워야 하는지 파일만 보고도 바로 알 수 있게 정리했다.
2026-04-03 v1.4.45
- Gmail SMTP를 사용하는 이메일 인증/비밀번호 재설정 1차 흐름을 추가했다. 첫 관리자 계정은 기존처럼 바로 활성화되지만, 일반 회원은 가입 직후 인증 메일을 받고
login?verifyToken=...링크로 인증을 마쳐야 로그인할 수 있게 바꿨다. - 로그인 화면에
인증 메일 재전송,비밀번호를 잊으셨나요?,login?resetToken=...기반 새 비밀번호 설정 UI를 추가해, 메일 링크를 받은 사용자가 같은/login화면에서 인증 완료와 비밀번호 재설정을 이어서 처리할 수 있게 했다. - 백엔드
users에email_verified를 추가하고, 이메일 인증/비밀번호 재설정 토큰을 해시로 저장하는 전용 테이블과 API를 추가했다. 운영 배포용docker-compose.prod.yml에는APP_ORIGIN,SMTP_*환경변수 자리를 열어 Gmail 앱 비밀번호를 코드에 넣지 않고 주입할 수 있게 정리했다.
2026-04-03 v1.4.44
- 오른쪽 레일 공통 카피라이트의
zenn링크가 민트 단색이라 라이트 모드에서 배경과 충분히 분리되지 않을 수 있었으므로, 테마 텍스트 색 기반의 굵은 링크 스타일로 바꿔 다크/라이트 양쪽에서 읽히도록 조정했다.
2026-04-03 v1.4.43
- 다른 사람 티어표를 복사한 직후 URL은 복사본 ID로 바뀌었는데 화면 데이터가 기존 원본에 남아 있을 수 있었던 문제를 고치기 위해,
TierEditorView가 같은 컴포넌트 안에서topicId / tierListId / preview라우트 값이 바뀔 때마다 편집기 상태를 다시 로드하도록 바꿨다. - 복사한 티어표 상단의 원본 링크를 클릭했을 때도 주소만 바뀌고 화면이 그대로 남지 않도록, 원본 이동 버튼이 같은 재로딩 흐름을 타게 정리했다.
- 작성자 본인 편집 모드에서 저장하지 않은 수정 내용이 있는 상태로 원본 링크를 누르면, 현재 변경 내용이 사라진다는 확인 모달을 먼저 띄우고
저장 없이 이동을 선택한 경우에만 원본 티어표로 이동하도록 보강했다.
2026-04-03 v1.4.42
- 홈 주제 템플릿 목록 정렬에서 수동 고정 순서가 같은 항목끼리 이름순으로 다시 정렬되던 부분을 바꿔, 즐겨찾기 우선과 관리자 수동 순서를 유지하되 수동 순서가 없는 템플릿은 최신 생성순으로 먼저 보이도록 맞췄다.
- 티어표 편집기에서 아이템을 클릭으로도 옮길 수 있게 해, 아이템을 한 번 클릭하면 선택 포커스가 표시되고 원하는 티어 셀이나 아이템 풀 빈 영역을 클릭하면 해당 위치로 이동하도록 보강했다.
- 클릭 배치와 기존 드래그 배치가 충돌하지 않도록 드래그 시작 시 선택 상태를 해제하고, 드래그 직후 짧은 시간 동안 아이템 클릭 선택을 무시하는 보호를 추가했다.
2026-04-03 v1.4.41
- 관리자 템플릿 기본 아이템 다중 업로드 제한을 한 번에
100개, 파일당20MB까지 받을 수 있도록 백엔드multer설정과 업로드 라우트 배열 제한을 함께 상향했다. - 프런트 Nginx 프록시에도
client_max_body_size 1024m을 추가해, 여러 이미지를 한 번의FormData요청으로 올릴 때 합산 본문 크기 제한 때문에 먼저413으로 막히는 상황을 줄였다.
2026-04-03 v1.4.40
- 공유 링크로 여는
preview=1화면을뷰어 모드로 정의하고, 드래그/편집 없이 완성본만 보이는 상태에서 오른쪽 레일 상단에는 광고, 하단에는 공유·복사·수정 전환 액션을 노출하도록 정리했다. - 비로그인 사용자나 작성자 본인이 아닌 사용자가 일반 편집 URL로 저장된 티어표를 직접 열어도 자동으로
preview=1뷰어 모드 주소로 전환되도록 로딩 후 라우팅을 보정했다. - 비로그인 사용자도 뷰어 모드에서
공유하기버튼을 사용할 수 있고, 로그인한 타인 티어표는내 티어표로 복사, 작성자 본인 티어표는수정 모드로 전환을 사용할 수 있게 권한별 액션을 분기했다. - 작성자 본인이 수정 화면에 있을 때는 우측 패널에
뷰어 모드로 보기를 추가해, 본인도 공유 화면과 같은 뷰어 모드를 바로 확인할 수 있게 했다. - 뷰어 모드에서도 에디터 로컬 오른쪽 레일을 마운트하도록 공통 앱 셸 조건을 보정해, 광고와 액션 카드가 실제 우측 패널에 안정적으로 렌더링되게 맞췄다.
2026-04-03 v1.4.39
- 기존 저장 티어표/복사본을 수정 가능한 상태로 다시 열 때, 저장본에 없던 최신 템플릿 기본 아이템만 미사용 풀 맨 뒤에 자동 합류하도록 병합 로딩을 추가했다.
- 관리자 템플릿에서 삭제된 기본 아이템이라도 이미 저장된 티어표의 그룹/풀에 남아 있는 항목은 그대로 보존해, 과거 결과물이 템플릿 정리 때문에 깨지지 않도록 유지했다.
- 주제별 공개 티어표 목록 화면은 좁은 브라우저 폭에서 상단 검색 툴바가 아래 줄로 내려오면 카드 목록과 간격이 붙어 보일 수 있었으므로, 홈/즐겨찾기 화면과 같은
pageWrap구조로 감싸 상단 영역과 목록 사이 여백을 유지하도록 정리했다.
2026-04-03 v1.4.38
- 관리자 회원 관리에서 운영자 계정으로는 최고 관리자 계정의 썸네일 변경, 비밀번호 초기화, 회원 삭제, 회원 정보 수정 버튼이 비활성화되도록 프런트 보호를 추가했고, 자기 자신 삭제 버튼도 함께 막았다.
- 관리자 회원 정보 수정에서는 운영자/관리자 예약어가 들어간 닉네임도 저장할 수 있도록 서버 검증 예외를 분리했고, 일반 회원가입과 개인 프로필 수정의 예약어 차단은 그대로 유지했다.
preview=1티어표 화면은 별도 프리뷰 셸을 걷어내고 공통 좌측 레일·중앙 헤더·우측 레일을 그대로 쓰도록 바꿨으며, 프리뷰 본문 제목도 홈 화면과 같은pageHead문법으로 맞췄다.- 프리뷰/일반 화면의 오른쪽 광고 레일은 같은 공통 레일 footer를 사용하게 되어 카피라이트 중앙 정렬이 맞춰졌고, 애드센스 영역 상단에는
padding-top: 78px를 적용해 시각적 시작점을 조금 아래로 내렸다. - 로컬에서 생성되는
backend/uploads/assets/최적화 이미지가 Git 변경분에 섞이지 않도록.gitignore제외 경로에 추가했다.
2026-04-02 v1.4.33
- 회원가입 시 닉네임 입력을 함께 받도록 바꾸고, 이메일 중복과 닉네임 중복을 서버에서 명확히 차단하도록 정리했다.
admin,운영자,관리자,official,zenn처럼 운영자·공식 계정으로 오해될 수 있는 닉네임은 예약어로 막고, 프로필 수정/관리자 회원 수정에서도 같은 규칙을 공유하도록 맞췄다.- 로그인·회원가입 화면은 중복된 이메일/닉네임일 때 빨간색 오류 메시지를 바로 보여주도록 보강했고, 테마는 저장값이 없을 때 무조건 다크로 시작하면서 설정 화면에서만 라이트/다크 토글을 다시 노출하도록 정리했다.
- 관리자 템플릿 썸네일 드롭존의 빈 상태 아이콘은 제거했고, 아이템 상세 모달에는 선택한 썸네일 프리뷰를 추가해 현재 선택한 이미지가 더 잘 보이게 했다.
2026-04-02 v1.4.32
- 파일명과 내부 심볼 이름까지
topic/template기준으로 마감했다.GameHubView는TopicHubView,AdminGamesSection은AdminTemplatesSection,useAdminGameManager와useAdminFeaturedGames는 각각useAdminTemplateManager,useAdminFeaturedTemplates로 정리했다. - 관리자 화면 내부 상태와 스타일 클래스도
adminTemplatePicker,templateManagerGrid,templateSettingsCard기준으로 바꿔, 사용자에게는 안 보이지만 코드 검색에서 남던Game흔적을 더 걷어냈다. - 백엔드도
copyUploadIntoTopicAsset,mapTopicRow,mapTopicItemRow처럼 내부 함수명을 맞추고, 업로드 디렉터리/정리 스크립트도topics기준으로 통일해backend/src,frontend/src,backend/scripts,backend/index.js범위의game/Game검색 결과를 0건으로 정리했다.
2026-04-02 v1.4.31
- 서비스가 아직 공개 전이고 예전 링크/예전 DB를 이어갈 필요가 없다는 전제에 맞춰,
/gamesredirect와 관리자/admin/gamesredirect, DB 레거시 마이그레이션 코드, legacy origin 정규화 코드를 실제로 제거했다. - 티어표 저장/request schema도 이제
origin: 'template' | 'custom'만 받도록 정리했고, 관리자 최근 최적화 작업 분류 fallback에 남아 있던games처리도 걷어냈다. - seed 데이터 ID까지
example-topic,another-topic기준으로 바꿔, 현재backend/src와frontend/src코드 검색에서game흔적이 0건인 상태까지 정리했다.
2026-04-02 v1.4.30
ensureData()단계에서 저장된 티어표pool_json과 템플릿 요청 스냅샷(items_json,board_items_json) 안에 남아 있을 수 있는origin: 'game'값을 자동으로template로 정리하도록 보강했다.- 로컬 MariaDB를 비운 뒤 현재 스키마로 다시 올리는 검증도 함께 진행했고, 새 DB 기준으로
topics=3,tierlists=0,legacyTierItems=0,legacyRequestItems=0상태까지 확인했다. - 즉 현재 개발 환경에서는 새로 생성되거나 다시 초기화한 데이터에
game기반 origin이 남지 않으며, 남은game코드는 레거시 redirect·DB 마이그레이션 감지·과거 데이터 호환층만 담당하게 됐다.
2026-04-02 v1.4.29
- 티어표 저장/request schema는 이제 새 데이터에서
origin: 'template'를 기본으로 쓰고, 예전origin: 'game'도 계속 읽을 수 있게 호환 레이어를 남겼다. - 관리자 아이템 라이브러리의 템플릿 연결 정보도
linkedTemplates기준으로 정리해, 내부 응답/프런트 상태에 남아 있던linkedGames흔적을 제거했다. - 현재
game검색에 남는 것은 레거시 주소 redirect, DB 마이그레이션용 legacy 테이블/컬럼명, 과거 저장 데이터 호환용origin: 'game'처럼 의도적으로 남겨둔 층만 남도록 정리했다.
2026-04-02 v1.4.28
- 관리자 템플릿 상세 상태(
selectedTemplate.game)와 관련 응답 키를template기준으로 정리해, 내부 코드 검색에서 남던game흔적을 더 줄였다. - 관리자 기본 아이템 정렬/로딩 상태 이름도
templateItem*,isTemplateLoading,templateVisibilitySaving기준으로 바꾸고, 새 템플릿 자산 업로드는topics디렉터리로 저장되게 맞췄다. - 현재 코드 검색에서 남는
game는 주로 레거시 주소 redirect(/games/:gameId), DB 마이그레이션용 legacy 테이블/컬럼명, 기존 저장 데이터와 맞춘origin: 'game'값처럼 의도적으로 남겨둔 호환층만 남도록 정리했다.
2026-04-02 v1.4.27
- 관리자 내부 탭/라우트 이름도
template-admin,adminTemplates,/admin/templates기준으로 더 정리해, 화면 상태값과 라우트 이름에 남아 있던game-admin,adminGames흔적을 줄였다. - 더 이상 참조되지 않는 DB alias export(
listGames,createGame,favoriteGame등)와updateTemplateRequestTargetGame별칭도 제거해, 백엔드 모듈 표면에서 남아 있던 레거시game이름층을 더 걷어냈다. - 커스텀 아이템 모달 내부 클래스명도
createTemplateButton기준으로 정리해, 관리자 코드 검색에서 남는createGame흔적을 줄였다.
2026-04-02 v1.4.26
- 관리자 API 레거시
/gamesalias를 걷어내고POST /api/admin/templates,.../templates/:templateId/...만 남기도록 정리했다. 관리자 템플릿 연결/가져오기 액션도link-template,create-templatepath로 바꿨다. - 백엔드 공개 주제 라우트도 이제
/api/topics만 마운트하고, 오래된/api/games경로는 제거했다. 관리자 화면 URL 역시/admin/games대신/admin/templates를 기본 경로로 쓰고, 예전 주소는 redirect만 남겼다. - 문서의 API/화면 매핑도 현재 구조 기준으로 갱신해,
games중심 설명 대신topics / templates기준으로 읽히게 맞췄다.
2026-04-02 v1.4.25
- 티어표와 템플릿 요청 응답에서
gameId / gameName / sourceGameId / targetGameId호환 키를 실제로 제거하고, 프런트 화면도topicId / topicName / sourceTopicId / targetTopicId만 읽도록 정리했다. - 관리자 전체 티어표 관리와 템플릿 요청 관리, 나의 티어표/즐겨찾기/검색 결과 이동, 티어표 편집기 저장·요청 payload도
topicId기준으로 맞춰, 화면과 요청 바디에서 보이는game흔적을 더 줄였다. - 관리자 템플릿 정렬 저장과 템플릿 아이템/요청 반영 API body도
topicIds / topicId기준으로 옮겼고, 남은gameId는 이제 레거시 주소 호환용/games/:gameId와 관리자 alias route path 쪽에만 남도록 정리했다.
2026-04-02 v1.4.24
- 공개 주제 API는 이제
topics목록과topic상세만 기본 응답으로 내려주고, 즐겨찾기 토글도topic만 반환하도록 정리했다. 관리자 템플릿 생성/공개 상태 저장도template만 기본 응답으로 맞췄다. - 홈, 주제 상세, 티어표 편집기, 관리자 템플릿 관리 화면도 이 변경에 맞춰
data.topics,data.topic,data.template를 직접 읽도록 바꿨다. - 관리자 내부 상태는
api.getTopic()응답을 받아도selectedTemplate.game에 한 번 정규화하도록 보강해, UI 구조를 크게 흔들지 않으면서 응답 호환 키는 더 줄일 수 있게 정리했다.
2026-04-02 v1.4.23
- 프런트
api.js에서 더 이상 쓰지 않는listGames / getGame / favoriteGame / updateAdminGame* / listPublicTierLists같은 레거시 별칭 메서드를 정리해, 공개/관리자 호출부가 실제로 쓰는topic/templateAPI만 남기도록 정리했다. - 관리자 템플릿 요청 상태와 전체 티어표 관리 카드도
sourceTopicId / targetTopicId / topicName을 우선 읽도록 더 당겨, 화면에서game키를 보는 범위를 줄였다. - 티어표 저장/템플릿 요청 백엔드는 이제 내부적으로
sourceTopicId / targetTopicId / topicId만 넘기도록 정리하고, 기존sourceGameId / gameId는 저장 경로에서 한 단계 더 덜어냈다.
2026-04-02 v1.4.22
- 백엔드 공개 주제 라우트 파일을 topics.js로 옮기고, 진입점도 이 이름으로 읽히게 정리했다. 이제 서버 코드에서
games.js파일명이 남아 있던 마지막 큰 표면도 실제 의미에 더 가깝게 맞춰졌다. - 공개 주제 라우트의 path 파라미터도
:topicId기준으로 읽히게 바꿔, 내부 구현에서 더 이상req.params.gameId를 기본 전제로 보지 않도록 정리했다.
2026-04-02 v1.4.21
- 프런트의 실제 소비 지점도
topic/template응답 키를 우선 읽도록 옮겼다. 홈의 즐겨찾기 토글, 주제 상세 헤더, 티어표 편집기 템플릿 로딩, 나의 티어표/즐겨찾기/검색 결과의 에디터 이동이 이제topic,topicId,template를 먼저 사용한다. - 관리자 템플릿 공개 상태 저장과 신규 템플릿 생성 흐름도
data.template를 우선 읽고, 기존data.game은 fallback으로만 남겨 프런트와 백엔드의 의미 이름이 한 단계 더 가까워지게 맞췄다.
2026-04-02 v1.4.20
- 백엔드
db와 라우트 내부 이름층을 한 단계 더topic기준으로 옮겼다.listTopics / findTopicById / getTopicDetail / createTopic / updateTopicThumbnail / updateTopicVisibility,createTopicItem / updateTopicItemLabel / updateTopicItemDisplayOrder / deleteTopicItem / deleteTopic같은 이름을 실제 export로 추가하고, 기존game이름은 호환 alias로만 남겼다. - 공개 주제 라우트는 이제
listTopics,getTopicDetail,favoriteTopic기준으로 동작하고, 백엔드 진입점도gamesRoutes대신topicsRoutes라는 이름으로 읽히도록 정리했다. - 관리자 라우트 역시 핵심 템플릿 흐름에서
findTopicById,createTopic,createTopicItem,promoteSnapshotItemsToTemplate,createTemplateFromTierList같은 의미 이름을 직접 사용하도록 바꿔, 실제 저장 스키마와 코드 언어가 더 가까워지게 맞췄다.
2026-04-02 v1.4.19
- 관리자 템플릿 기본 아이템 삭제는 이제 기존에 저장된 티어표의 그룹/대기풀 데이터를 건드리지 않고, 템플릿의 현재 기본 아이템 목록에서만 제거되도록 바꿨다. 그래서 이미 만들어진 티어표는 그대로 유지되고, 이후 새로 만드는 티어표에서만 해당 아이템이 빠진다.
- 삭제 전에는 이 아이템이 이미 저장된 티어표 몇 개에서 사용 중인지(공개/비공개 포함) 확인 문구를 먼저 보여주도록 바꿔, 운영자가 영향 범위를 알고 삭제할 수 있게 했다.
- 템플릿 썸네일이 이미 등록된 상태에서는 등록 아이콘이 겹쳐 보이지 않도록 정리했고, 기본 아이템 삭제 후 템플릿을 다시 불러와도 페이지가 맨 위로 튀지 않게 스크롤 위치를 복원하도록 보강했다.
2026-04-02 v1.4.18
- 관리자 템플릿 요청 카드 썸네일 클릭은
window.open(...)을 템플릿 이벤트 안에서 직접 호출하던 구조 때문에 브라우저 새 창 열기 시Cannot read properties of undefined (reading 'open')가 날 수 있었고, 이를 제거해 앵커의 기본 새 창 동작만 사용하도록 정리했다.
2026-04-02 v1.4.17
- 주제 컬렉션에서 티어표 카드를 클릭할 때
Maximum call stack size exceeded가 나던 원인은editor레거시 redirect가 새 라우트와 동일한 URL 패턴을 다시 자기 자신에게 redirect하던 구조였고, 불필요한editorredirect 레코드를 제거해 무한 라우팅 루프를 끊었다.
2026-04-02 v1.4.16
- 백엔드나 DB 장애가 났을 때 일반 화면에서 계속
연결할 수 없어요식으로 보이던 흐름을 정리하고,api공통 요청 계층에서db_init_failed같은 500과 네트워크 실패를 감지해 앱 전체를 점검/연결 확인 화면으로 전환하도록 바꿨다. - 이제 데이터베이스 초기화 실패나 서버 내부 500은
서비스 점검 중, 네트워크 단절은서버 연결 확인 중으로 구분되어 보이며, 사용자는 일반 페이지 대신 전용 안내 화면과 다시 시도 버튼을 보게 된다.
2026-04-02 v1.4.15
db_init_failed의 직접 원인은 MariaDB에서SHOW TABLES LIKE ?,SHOW COLUMNS ... LIKE ?플레이스홀더를 허용하지 않던 부분이었고, 이를information_schema조회 기반으로 바꿔 실제 운영 DB에서도ensureData()가 정상 통과되게 고쳤다.- 중간 마이그레이션 상태에서
template_requests.target_topic_id가 이미 생긴 DB는 중복 컬럼 추가로 다시 실패할 수 있었으므로, 해당 확인도columnExists()기준으로 바꿔 부분 적용된 DB까지 안전하게 다시 기동되게 정리했다.
2026-04-02 v1.4.14
/games/:gameId,/editor/:gameId/...레거시 주소는 Vue Router alias 대신 redirect로 정리해,topicId기준 라우트와 섞일 때 뜨던 param mismatch 경고를 제거했다.- 운영 DB에서 바로
RENAME/CHANGE를 치던 초기 마이그레이션은 위험도가 높아,topics / topic_items / favorite_topics / topic_id스키마를 안전하게 만들고 기존games계열 데이터를 복사해 오는 방식으로 바꿨다. - DB 초기화 실패 시 원인을 바로 확인할 수 있도록 백엔드에서
db_init_failed응답 전에 실제 에러를 서버 로그에 남기도록 보강했다.
2026-04-02 v1.4.13
- DB 실명 변경 마지막 단계로
games / game_items / favorite_games를topics / topic_items / favorite_topics기준으로 자동 마이그레이션하도록 정리하고,tierlists.game_id,template_requests.source_game_id/target_game_id도 각각topic_id,source_topic_id/target_topic_id로 옮기게 했다. - 백엔드 저장/조회 쿼리는 이제 새 topic 스키마를 기준으로 동작하고, 응답에는
topicId / topicName을 기본으로 내려주되 기존 프런트가 바로 깨지지 않도록gameId / gameName도 잠시 함께 유지했다. - 티어표 공개 목록, 관리자 전체 티어표 관리, 티어표 저장/요청 API는
topicId를 우선 받도록 정리하고 기존gameId는 호환 입력으로만 남겨, 외부 표면과 실제 저장 스키마가 한 단계 더 가까워지게 맞췄다.
2026-04-02 v1.4.12
- 백엔드에
/api/topics와/api/admin/templatesalias 경로를 추가하고, 주제/템플릿 응답도topic/topics,template/templates키를 함께 내려주도록 정리했다. - 프런트의 새 의미 이름은 이제 실제로도
/api/topics,/api/admin/templates를 타도록 연결해, 경로 이름과 호출 이름이 다시 어긋나지 않게 맞췄다.
2026-04-02 v1.4.11
- 프런트 API 이름층을 한 단계 더 정리해
listTopics / getTopic / favoriteTopic,updateAdminTemplate*,searchPublicTierListsByTopic같은 의미 기반 이름을 추가하고 실제 호출부도 이 기준으로 옮겼다. - 백엔드 경로와 응답 구조는 그대로 유지한 채 프런트에서 읽는 이름만 먼저 바꿔, 다음 단계의 API/모델 리네이밍 부담을 더 줄였다.
2026-04-02 v1.4.10
- 주제 상세 라우트 이름을
topicHub로, 기본 경로 파라미터를topicId로 바꾸고 기존gameId주소는 alias로 유지했다. - 앱 셸, 주제 상세, 티어표 편집기는 이제 내부에서
topicId를 우선 읽고, 레거시 주소로 들어온 경우에만gameIdfallback을 쓰도록 정리했다.
2026-04-02 v1.4.9
frontend/src/lib/paths.js를 추가해 주제 진입, 에디터 이동, 로그인 리다이렉트, 공유 프리뷰 주소 같은 사용자 표면 경로를 공용 함수로 모았다.- 홈, 주제 상세, 나의 티어표, 즐겨찾기, 검색 결과, 로그인, 설정, 관리자 미리보기, 티어표 편집기까지 이 경로 헬퍼를 쓰도록 바꿔 이후
topics전환을 더 안전하게 이어갈 수 있는 기반을 만들었다.
2026-04-02 v1.4.8
- 주제 상세 컬렉션 화면은 제목을
topicIdfallback으로 먼저 노출하지 않도록 바꾸고, 주제 전환 시에는 로딩 문구를 거쳐 실제 이름으로 자연스럽게 바뀌게 정리했다. - 검색 결과 화면도 공통
pageHead문법으로 맞춰 주요 목록 화면들의 상단 리듬을 한 번 더 통일했다.
2026-04-02 v1.4.7
- 주제 선택 뒤에 들어가는
Collection화면을 공통pageHead레이아웃으로 다시 맞추고, 검색 입력을 즐겨찾기 화면처럼 상단 우측 툴바로 정리했다. 공개 티어표보조 설명 줄은 제거해 헤더 밀도를 줄였고, 사용자 진입 경로는/topics/:gameId를 기본으로 전환하면서 기존/games/:gameId는 alias로 유지했다.
2026-04-02 v1.4.6
- 관리자 내부 리네이밍 2단계로
AdminView와 관련 composable/component의 핵심 상태명을selectedTemplate / templates / loadTemplate / refreshTemplates / createTemplate기준으로 정리했다. - 요청 검토, 템플릿 생성 모달, 아이템 추가/정렬, 템플릿 선택 모달 흐름도 같은 기준으로 맞춰, 관리자 화면을 읽을 때 내부 이름과 사용자 노출 용어가 덜 어긋나게 정리했다.
2026-04-02 v1.4.5
- 내부 리네이밍 1단계를 시작해 홈, 주제 화면, 티어표 편집기, 앱 셸에서
games / gameId / gameName중심의 로컬 상태명을templates / topicId / templateId / templateName계열로 먼저 정리했다. - 경로와 API는 그대로 둔 채 프런트 내부에서 자주 읽는 상태명부터 바꿔, 이후
/games라우트와 관리자 상태를 손볼 때 의미 충돌이 덜 나도록 기반을 만들었다.
2026-04-02 v1.4.4
- 홈 화면
Topic Library와 일부 영어 헤더를주제 선택 / 티어표 / 관리자 작업실 / 티어표 만들기 / 작업 공간으로 정리해, 화면 타이틀과 상단 레이블까지 한국어 기준으로 거의 통일했다.
2026-04-02 v1.4.3
- 관리자 토스트, 확인창, 요청 처리 안내처럼 실제로 자주 보이는 운영 문구까지
주제 / 템플릿기준으로 한 번 더 정리해, 화면 제목뿐 아니라 작업 피드백도 더 일관되게 맞췄다.
2026-04-02 v1.4.2
- 관리자 화면과 보조 모달에 남아 있던 사용자 노출
게임문구를 추가로 걷어내고,템플릿 / 주제기준 표현으로 더 통일했다.
2026-04-02 v1.4.1
- 왼쪽 사이드 메뉴를
주제 선택 / 나의 티어표 / 즐겨찾기 / 설정한글 문구로 통일하고, 해당 화면 진입 시 헤더 타이틀도 같은 이름 기준으로 맞췄다.
2026-04-02 v1.4.0
- 사용자 노출 용어 1차 정리를 시작해 홈/좌측 레일/가이드/주제 화면에서는
게임대신주제, 관리자 핵심 화면에서는게임 관리대신템플릿 관리중심 표현으로 바꿨다. - 내부 데이터 모델과 API의
gameId,/games구조는 아직 유지하고, 이번 단계는 화면 문구와 안내 텍스트를 먼저 정리하는 안전한 1차 리네이밍 범위로 제한했다.
2026-04-02 v1.3.93
- 게임 목록, 티어표 리스트, 사용자 아바타 버튼 등 목록성 썸네일 이미지에
draggable=\"false\"를 적용해 브라우저 기본 이미지 드래그 프리뷰가 뜨지 않도록 정리함.
2026-04-02 v1.3.92
- 왼쪽 네비게이션의 활성 메뉴 배경은 개별 항목에 즉시 붙는 방식에서, 공용 인디케이터가 현재 메뉴 위치로 미끄러져 이동하는 토글형 인터랙션으로 정리함.
2026-04-02 v1.3.91
- 로그인 화면 상단의
로그인 / 회원가입전환은 선택된 버튼 배경이 즉시 바뀌던 방식에서, 뒤쪽 하이라이트가 토글처럼 좌우로 미끄러져 이동하는 인터랙션으로 정리함.
2026-04-02 v1.3.90
- 관리자 화면 CSS 경고를 줄이기 위해
display: block요소에 의미 없던vertical-align을 제거하고,line-clamp표준 속성을 함께 선언해 VS Code 진단을 정리함.
2026-04-02 v1.3.89
- 현재 코드에서 참조되지 않던
frontend/public/icons.svg,frontend/src/assets/hero.png,frontend/src/assets/vite.svg,frontend/src/assets/vue.svg를 삭제해 템플릿 잔재 자산을 정리함. - 홈페이지 공유용
og-card.svg,og-card.png는 이번 워크트리에서 직접 수정된 최신 이미지 상태를 그대로 반영해 함께 정리함.
2026-04-02 v1.3.88
- 중앙 워크스페이스 헤더의
by zenn링크는 공통 카피라이트 footer가 이미 역할을 대신하므로 제거하고, 기본 서브타이틀도 서비스 설명 문구로 정리함. - 홈페이지 공유용 메타를 정리해
title,description,canonical, Open Graph, Twitter 카드 정보를tmaker.sori.studio기준으로 연결함. - 외부 공유용
og-card.svg와 실제 썸네일og-card.png, 브라우저/모바일용favicon-32x32.png,apple-touch-icon.png를 추가해 링크 공유와 파비콘 노출을 함께 보강함.
2026-04-02 v1.3.86
- 티어표 편집의
아이콘 크기는 이제 임시 화면 상태가 아니라 저장 데이터에 함께 포함되며, 저장 후 다시 열기와 프리뷰 화면에서도 같은 크기로 복원되도록 정리함. - 이를 위해 티어표 저장 payload, 서버 검증, DB 저장/조회에
iconSize를 추가하고 기존 데이터는 기본값80으로 안전하게 보정되게 맞춤. - 이후 공유 프리뷰 화면이 여전히 80으로 고정되던 문제는
previewOnly레이아웃에서--thumb-size스타일 바인딩이 빠져 있던 탓이었고, 프리뷰 루트에도 같은 값을 전달해 저장된 크기가 그대로 반영되게 보정함.
2026-04-02 v1.3.83
- 티어표 편집/프리뷰 화면에서 열을 여러 개 쓰는 경우, 모바일처럼 좁은 화면에서는 기존 상단 열 헤더만으로 각 칸의 의미를 읽기 어려웠으므로 각 칸 상단에 작은 열 이름 배지를 추가함.
- 이 배지는 모바일 구간에서만 보이고 데스크톱 레이아웃은 그대로 유지되므로, 작은 화면에서는
메인 / 밸런스 / 서포트같은 열 맥락을 스크롤 중에도 잃지 않게 정리함. - 이후 배지가 칸 기준이 아니라 화면 한쪽에 겹치던 문제를 바로잡기 위해 각 칸을 기준점으로 다시 잡았고, 배지가 보이는 구간에서는 기존 상단 열 제목을 함께 숨겨 중복 표기를 제거함.
- 추가로 같은 미디어 구간 안에서 행/열 모바일 레이아웃을 다시
140px/150px로 덮어쓰던 중복 규칙을 제거해, 모바일에서는 행 라벨이 화면 절반을 차지하지 않고 실제로 한 줄 전체 폭 기준 레이아웃으로 정리되게 맞춤.
2026-04-02 v1.3.82
- 프리뷰 전용 완성본 화면에도 이미지 다운로드 결과와 같은 하단 메타를 붙여, 작성자 이름과 마지막 저장 시각을 바로 확인할 수 있게 정리함.
- 관리자
티어표 관리 > 템플릿 요청 관리에서는 더 이상 썸네일 클릭으로 요청 미리보기 모달을 열지 않고, 썸네일 자체가요청 티어표 보기새창 링크 역할을 하도록 바꿨으며, 하단의 중복요청 티어표 보기버튼은 제거함.
2026-04-02 v1.3.81
- 티어표 만들기 화면에는 저장된 티어표에서만 보이는
공유하기액션을 추가하고, 누르면 현재 티어표의 완성본 링크(preview=1)를 클립보드에 복사한 뒤 토스트로 안내하도록 정리함. - 공유 링크는 관리자가 새 창에서 보던 완성본 주소와 같은 문법을 사용하므로, 저장된 티어표를 그대로 외부에 전달하거나 다시 열람하는 흐름으로 바로 이어짐.
2026-04-02 v1.3.79
- 우측 카피라이트는 관리자 전용 레이아웃에서 분리해 앱 공통
rightRailfooter로 올렸고, 이제 관리자 페이지뿐 아니라 오른쪽 사이드가 보이는 모든 화면에서 같은 최하단 위치에 표시됨. - 따라서 관리자 패널 길이나 페이지별 로컬 사이드바 내용과 무관하게, 카피라이트는 항상 오른쪽 레일 전체 기준 바닥에 고정되는 공통 footer 역할로 정리됨.
2026-04-02 v1.3.78
- 왼쪽 레일 축소 상태의 하단 액션 아이콘은 문맥에 따라 구분되도록 바꿔, 홈의
커스텀 티어표 만들기는dashboard_customize아이콘을 쓰고 게임 허브의 일반티어표 만들기만add_notes아이콘을 유지하도록 정리함. - 관리자 우측 카피라이트 문구는 사이드바 바깥 형제로 밀려 보이지 않을 수 있었으므로, 다시 관리자 사이드바
aside내부 최하단으로 옮겨 레이아웃 안에서 안정적으로 보이게 정리함.
2026-04-02 v1.3.77
- 왼쪽 사이드 레일을 축소했을 때도 홈과 게임 허브에서 바로 새 티어표를 만들 수 있도록, 최하단 액션 영역에
add_notes아이콘 기반의 축소 전용티어표 만들기버튼을 추가함. - 펼친 상태에서는 기존 텍스트 버튼을 그대로 유지하고, 축소 상태에서는 같은 위치에 아이콘 버튼만 남기도록 분기해 하단 액션 위치 감각은 유지하면서도 좁은 레일 폭에 맞게 정리함.
2026-04-02 v1.3.76
- 앱 왼쪽 사이드 레일은 축소 상태에서 아바타, 검색 버튼, 네비게이션 아이콘 버튼 높이를 모두 50px 기준으로 맞추고 검색 아래 여백도 정리해, 아이콘만 보이는 상태에서도 각 줄 높이가 제각각처럼 보이지 않게 정리함.
- 왼쪽 사이드 검색은 라우트에 따라 의미가 바뀌지 않도록
게임 템플릿 검색으로 고정하고, 축소 검색 모달 역시 같은 플레이스홀더와 같은 동작으로 홈 게임 목록 검색을 수행하도록 통일함.
2026-04-02 v1.3.75
- 관리자 공용 모달 카드의 기본
padding: 20px는 그대로 두되, 아이템 상세처럼 내부 레이아웃이 이미 큰 셸을 가진 모달은modalCard--customItem에서 다시 덮어쓰지 않도록 분리해 상세 모달 크기와 내부 배치가 무너지지 않게 정리함. - 관리자 우측 사이드바 최하단의 카피라이트 문구는 이제 별도 상수 URL을 참조하는 외부 링크로 바꿔 새 창에서 열리게 했고, 추후 주소를 바꿔야 할 때 한 곳만 수정하면 되도록 정리함.
- 앱 왼쪽 사이드 레일의 접힘 상태는 메타 텍스트를 단순히 투명하게 남겨두는 대신 실제로 숨기고, 아바타/검색/내비 아이콘을 다시 중앙 정렬해 접었을 때 높이가 비정상적으로 늘어나거나 간격이 남아 보이던 레이아웃을 정리함.
2026-04-02 v1.3.74
- 아이템 관리 상세에서 템플릿 추가 대상 게임을 고를 때, 이미 해당 이미지가 연결된 게임은 공용 게임 선택 모달에서
이미 추가됨으로 표시하고 비활성화해 중복 추가 실수를 미리 막도록 정리함. - 관리자 우측 사이드바 최하단에는 작은 카피라이트 문구를 추가해, 헤더에 관리 정보만 남기고 프로젝트 표기는 하단에서 조용히 보이도록 정리함.
2026-04-02 v1.3.73
- 전체 티어표 관리 카드 썸네일은
draggable="false"로 바꿔, 미리보기 진입 시 브라우저 기본 이미지 드래그가 클릭을 방해하지 않도록 정리함. - 관리자 사이드바의 검색 입력과 검색 버튼은 한 줄로 묶어, 입력/선택/실행 버튼이 모두 같은 크기의 세로 스택처럼 보이던 답답함을 조금 줄이고 역할 구분을 더 분명하게 함.
- 아이템 관리 상세 모달의 템플릿 추가 대상 선택도 내부 전용 게임 리스트 대신 공용
게임 선택검색 모달을 쓰도록 바꿔, 향후 게임 수가 많아져도 같은 선택 문법으로 이어지게 정리함.
2026-04-02 v1.3.72
- 관리자 화면 초기화 중
/admin/games?gameId=...경로를 즉시 처리하는 watcher가loadGame초기화보다 먼저 실행되어 브라우저 콘솔에Cannot access 'loadGame' before initialization오류가 나던 문제를 수정함. - 게임 라우트 진입 시 실제 게임 로딩 호출은 컴포넌트 초기화가 끝난 뒤 microtask로 미뤄 실행하도록 바꿔, 첫 진입/새로고침에서도 게임 선택 복원 흐름이 안전하게 이어지게 정리함.
2026-04-02 v1.3.71
- 관리자 아이템 모달은 최근 추가했던 선택 요약 카드를 다시 걷어내고, 더 단순한
게임 선택 패널 + 상세 작업 영역구조로 되돌려 이전 흐름에 가깝게 정리함. - 관리자
게임 관리와전체 티어표 관리의 게임 선택은 긴 셀렉트/목록 대신 공용게임 선택검색 모달로 바꿔, 게임 수가 많아져도 이름·ID 검색으로 바로 찾아 선택할 수 있게 함. - 전체 티어표 관리의 게임 필터 해제도 같은 모달 흐름에 맞춰
모든 게임 보기로 처리하고, 사이드바에는 현재 선택된 게임만 요약 카드로 보여줘 긴 리스트가 계속 쌓이지 않게 정리함.
2026-04-02 v1.3.70
- 관리자
전체 티어표 관리는 이제 게임별 필터를 지원해, 특정 게임에서 만들어진 티어표만 따로 골라 보며 공개/비공개 분포를 확인할 수 있게 함. - 전체 티어표 카드는 공개 여부를 텍스트 대신 다른 관리자 화면과 같은 배지 형식으로 표시하고, 카드의
관리액션에서 제목·설명 수정, 공개/비공개 전환, 삭제를 바로 처리할 수 있게 보강함. - 이를 위해 관리자 전용 티어표 수정/삭제 API와 게임 기준/검색 기준 공개 집계 로직을 함께 추가해, 관리자 화면에서 비공개 개입과 운영성 검수가 한 흐름으로 이어지게 정리함.
2026-04-02 v1.3.69
- 관리자 아이템 라이브러리는 참조 수/공유 기록 UI가 실제 운영 판단에 비해 노이즈가 커 보여 카드 수치, 상세 모달의 같은 이미지 참조 섹션, 삭제 확인 문구의 참조 강조를 걷어내고 다시 항목 자체 관리 흐름 위주로 정리함.
- 관리자 게임 관리 상단 요약은 더 이상
선택 상태처럼 추상적인 문구를 보여주지 않고, 선택된 게임 기준으로 만들어진 티어표의전체 / 공개 / 비공개개수를 바로 보여주도록 바꿈. - 전체 티어표 관리 상단에도 검색 결과 기준
전체 / 공개 / 비공개수치를 함께 노출하고, 이를 위해 관리자 티어표 집계 API를 별도로 추가해 페이지 단위가 아니라 실제 전체 결과 기준 숫자를 안정적으로 표시함.
2026-04-02 v1.3.68
- 관리자 아이템 상세 모달은 같은 이미지를 왼쪽 선택 카드와 오른쪽 본문에서 두 번 보여주던 중복 미리보기를 제거해, 한 모달 안에서 정보가 겹쳐 보이던 문제를 정리함.
- 왼쪽 게임 선택 패널과 오른쪽 상세 정보 패널은 각각 독립 스크롤이 되도록 바꾸고, 스크롤바도 다시 보이게 조정해 긴 목록이나 긴 참조 정보가 있어도 레이아웃이 깨지지 않고 탐색할 수 있게 함.
- 현재 선택한 이미지 요약 카드에는 별도 배경과 테두리를 추가해, 기존 클릭 모달의 “선택 대상”과 오른쪽 작업 영역이 한눈에 구분되도록 시각 계층을 정리함.
2026-04-02 v1.3.67
- 관리자 아이템 관리 카드에는 이제 같은
src를 공유하는 참조 수와 연결 게임 수를 함께 표시해, 같은 이미지가 얼마나 넓게 쓰이는지 목록 단계에서 바로 파악할 수 있게 함. - 아이템 상세 모달은 왼쪽 패널 상단에 현재 선택한 이미지와
총 참조 / 사용자 업로드 / 템플릿 항목 / 보관 자산요약을 보여주고, 오른쪽에는 같은 이미지를 가리키는 다른 기록 목록을 함께 표시해 실제로 어떤 참조들이 묶여 있는지 모달 안에서 바로 확인할 수 있게 함. - 삭제 확인 문구도 이제 단순 타입 설명만 하지 않고
같은 이미지 참조 n건 중 현재 항목만 다룬다는 영향을 함께 보여, 삭제 전에 범위를 더 명확히 이해할 수 있게 정리함.
2026-04-02 v1.3.66
누락 참조 정리는 처음엔 누락 커스텀 아이템이 있을 때만 티어표/요청 썸네일까지 함께 보던 조건 때문에, 누락 썸네일만 남아 있으면 수치가 줄지 않던 문제가 있었으므로 분기를 풀어 티어표 썸네일과 요청 썸네일도 항상 실제 파일 존재 여부를 확인해 정리하도록 수정함.- 정리 완료 메시지에도
티어표 썸네일,요청 썸네일항목을 추가해 어떤 종류의 누락 참조가 실제로 정리됐는지 바로 알 수 있게 함.
2026-04-02 v1.3.65
- 관리자 이미지 최적화 패널에
누락 참조 정리액션을 추가해, 실제 파일이 없는/uploads/...참조만 대상으로 썸네일/아바타는 비우고 누락된 게임 아이템·커스텀 아이템은 관련 티어표/템플릿 요청 참조와 함께 정리할 수 있게 함. - 따라서 예전 수동 파일 정리나 레거시 데이터로 인해 쌓인
누락 파일은 단순 통계로만 남지 않고, 관리자 화면에서 실제로 줄일 수 있는 관리 도구를 갖게 됨.
2026-04-02 v1.3.64
- 관리자 이미지 최적화 최근 작업에서
기존 최적화 파일 재사용건은 이제이번 업로드 용량 · 재사용 자산 용량형태로 표시하고, 동일한 최적화 결과가 이미 있어 새 파일을 다시 만들지 않았다는 설명을 함께 보여 혼동을 줄임. - 관리자 아이템 관리는 기존의
미사용 사용자 업로드만 보기체크박스 대신전체 / 사용자 업로드 / 템플릿 사용 이미지 / 관리자 보관 자산 / 미사용 사용자 / 미사용 관리자필터로 바꿔, 관리자 업로드 자산도 별도로 확인할 수 있게 정리함. - 게임 관리의 선택된 게임 설정은 더 이상 우측 사이드바 아래쪽에 쌓지 않고, 본문 상단에 썸네일과 공개 상태·썸네일 적용·게임 삭제 액션을 함께 둔 카드로 옮겨 게임 목록이 많아져도 작업 영역을 더 안정적으로 읽을 수 있게 조정함.
2026-04-02 v1.3.63
- 관리자 이미지 최적화 최근 작업 목록은 더 이상 내부 카테고리 문자열
custom / tierlists / games / avatars를 그대로 노출하지 않고, 각각커스텀 아이템 / 티어표 썸네일 / 게임·템플릿 이미지 / 프로필 아바타처럼 사람이 이해할 수 있는 이름으로 표시함. - 같은 이미지 해시를 다시 업로드해 기존 최적화 파일을 재사용한 경우에는 최근 작업 목록에
기존 최적화 파일 재사용문구를 함께 보여, 새로 압축된 건지 중복 자산이 재사용된 건지 운영자가 바로 구분할 수 있게 함.
2026-04-02 v1.3.62
- 티어표 저장과 템플릿 요청 전 커스텀 이미지 업로드에서는 더 이상
itemsById객체 키 순서에 기대지 않고, 실제 화면에 보이는아이템 영역 + 보드 배치 순서기준으로 아이템 배열을 만들도록 바꿔 저장 중 이미지 목록이 흔들리던 현상을 줄임. - 따라서 커스텀 아이템 이름 정리 목록, 저장 payload, 템플릿 요청 payload 모두 같은 순서 기준을 공유하게 되어, 이미지를 여러 장 올린 뒤 저장해도 사용자가 보고 있던 흐름이 덜 흔들리도록 정리함.
- 티어표 삭제 버튼은 이제 템플릿 요청과 같은 기준으로
저장된 티어표에서만 노출되며, 실제 삭제도 저장본 ID가 있을 때만 동작하도록 맞춰 저장 전 초안 상태의 어색한 삭제 액션을 제거함.
2026-04-02 v1.3.61
- 관리자 게임 관리의 썸네일 드롭존, 관리자 기본 아이템 추가 드롭존, 티어표 에디터의 커스텀 이미지 드롭존에
add_photo_alternate아이콘을 넣어 업로드 영역임을 더 빠르게 인식할 수 있게 정리함. - 관리자와 에디터 드롭존은 점선 보더 굵기, 라운드, 밝은 배경 톤, 활성화 상태 색 변화, 파일 선택 버튼 크기를 같은 계열로 맞춰 서로 다른 화면에서도 같은 업로드 컴포넌트처럼 읽히도록 통일함.
- 썸네일 드롭존 역시 배경을 일반 입력 필드보다 더 밝고 넓은 업로드 박스처럼 보이게 조정해, 일반 폼 필드와 대표 이미지 교체 영역을 시각적으로 더 분명하게 구분함.
2026-04-02 v1.3.60
- 관리자 게임 관리의 대표 썸네일 드롭존은 이제 썸네일이 없을 때는
클릭 & 드래그, 이미 등록된 썸네일이 있을 때는썸네일 변경으로 문구가 바뀌어 현재 동작을 더 바로 읽을 수 있게 함. - 관리자 인증 상태는 라우터 가드와 앱 셸이 동시에
/api/auth/me를 호출할 때, 가드가 아직 끝나지 않은 요청을 기다리지 못해 새로고침 직후 홈으로 튕기던 흐름이 있었으므로 인증 스토어에서 진행 중인refreshPromise를 재사용하도록 정리함. - 따라서 관리자 계정으로 로그인된 상태에서는
/admin/...경로를 새로고침해도 세션 확인이 끝날 때까지 같은 요청을 기다린 뒤 관리자 화면에 남도록 안정성을 보강함. - 티어표 만들기 화면의 보드 드롭존은 점선 테두리, 더 높은 박스, 중앙 정렬된 안내 문구와 버튼을 적용해 커스텀 이미지 추가 영역임을 더 즉시 인식할 수 있게 조정함.
2026-04-02 v1.3.59
- 관리자 템플릿 요청의
promote-items처리에서는 잘못된z.record스키마 때문에 500이 나던 서버 파싱 버그를 수정하고, 요청 아이템src까지 함께 받아 실제 요청 데이터와 더 안정적으로 매칭하도록 보강함. - 요청 아이템을 게임에 반영할 때는 이제 같은 게임 안에 동일한
src가 이미 있으면 새 기본 아이템을 다시 만들지 않도록 막고, 관리자 화면에서도 이미 반영된 요청 아이템은 드래프트에 다시 올리지 않게 정리함. - 신규 템플릿 요청으로 새 게임을 한 번 만들면 해당 요청과 새 게임을 연결해 저장하고, 이후 같은 요청에서 다시
확인하기를 눌렀을 때는 새 게임을 또 만들지 않고 기존에 연결된 게임으로 바로 복귀하도록 흐름을 정리함. - 따라서 요청 카드와 게임 관리 작업 패널에서는
연결된 게임,이미 반영 n개같은 상태를 함께 보여, 처리 완료 전에도 현재 진행 정도와 재작업 위험을 더 쉽게 구분할 수 있게 함.
2026-04-02 v1.3.55
- 관리자 요청 카드 오른쪽 상단의
신규 템플릿 / 보유 템플릿배지는 서로 다른 색상으로 분리해, 카드 타입을 텍스트보다 더 빠르게 구분할 수 있게 조정함. - 게임 관리의 기본 아이템 추가 미리보기에서도
요청 아이템 / 직접 추가 파일배지를 서로 다른 색상으로 구분해, 요청 반영분과 직접 업로드분이 한눈에 섞이지 않도록 정리함. - 신규 템플릿 요청에서
새 게임 만들기를 진행할 때는 요청 티어표 대표 썸네일도 함께 새 게임 썸네일로 복사되도록 보강해, 관리자가 이후 수정하더라도 초기 식별용 썸네일은 바로 이어받을 수 있게 함.
2026-04-02 v1.3.54
- 관리자
티어표 관리요청 카드에서는 사용법 힌트 문구와 중복 타입 텍스트를 제거해, 카드 본문이 관리 정보만 더 빠르게 읽히도록 정리함. 신규 템플릿 / 보유 템플릿구분은 카드 오른쪽 상단의 별도 배지로 옮기고, 기존추가 아이템 / 확인함 여부배지는 그대로 유지해 정보 계층을 더 단순하게 맞춤.요청 티어표 보기링크는 하단 액션 줄의 왼쪽으로 옮기고확인하기 / 처리 완료버튼은 오른쪽에 정렬해, 실제 작업 버튼과 보조 링크의 역할이 한 줄 안에서도 분명하게 보이도록 조정함.
2026-04-02 v1.3.53
- 관리자 리팩터링 4차로
목록 관리정렬 로직과아이템 관리모달/삭제/승격 액션을 각각useAdminFeaturedGames,useAdminCustomItemscomposable로 분리해AdminView.vue의 직접 액션 코드를 더 줄임. - 따라서 관리자 메인 뷰는 섹션 연결과 공통 상태 중심으로 더 가까워졌고, 상단 고정 게임 정렬과 커스텀 아이템 처리 흐름은 각 영역 책임에 맞는 파일로 옮겨 유지보수 범위를 좁힘.
2026-04-02 v1.3.52
- 관리자 본문 섹션을 컴포넌트로 나눈 뒤
AdminView.vue스타일이scoped에 묶여 자식 컴포넌트까지 제대로 닿지 않던 문제를 정리하고, 관리자 전용 공통 스타일을adminUiScope범위로 다시 묶어 각 페이지 CSS가 함께 살아나도록 보강함. - 템플릿 요청 카드의 신규 게임 입력 영역에는
게임 이름 / 게임 ID필드 스타일을 다시 붙여, 요청 카드만 따로 풀린 것처럼 보이던 레이아웃을 복구함. - 관리자 사이드바의
전체 티어표 관리모드는 내부 값이lists와all로 엇갈리던 상태를all기준으로 통일해, 버튼 활성 상태와 실제 목록 전환이 어긋나지 않게 정리함. - 운영 이력 정합성을 위해 누락돼 있던 릴리스 태그도 다시 점검하고,
v1.3.50,v1.3.51,v1.3.52흐름으로 이어서 관리함.
2026-04-02 v1.3.51
- 관리자 리팩터링 3차로 회원 관리 액션을
useAdminUserscomposable로 분리해, 아바타 변경, 회원 정보 수정, 비밀번호 초기화, 권한 변경, 삭제 모달 흐름을AdminView.vue밖으로 옮김. - 따라서 관리자 메인 뷰는 섹션 연결과 공통 상태에 더 집중하고, 회원 관리 로직은 다른 관리자 영역과 같은 composable 분리 기준으로 맞추기 시작함.
- 이번 정리에서도 관리자 화면에 직접 반영돼 있던 텍스트와 게임 관리 CSS 수정분은 유지한 채 구조만 옮기도록 정리함.
2026-04-02 v1.3.50
- 관리자
템플릿 요청 관리카드에서는 대표 썸네일을 다시 복구해 게임 이름/ID와 함께 요청 대상을 더 빠르게 식별할 수 있게 정리함. 확인하기후 게임을 불러오면서 요청 아이템 임시 목록이 비워지던 흐름을 수정하고, 신규 게임 생성 직후에도 요청 아이템이 기본 아이템 추가 미리보기에 유지되도록 보강함.- 관리자 상단 작업 모드는
/admin/featured,/admin/games,/admin/items,/admin/tierlists,/admin/users경로로 나눠 뒤로가기 시 관리자 밖으로 바로 이탈하던 흐름을 줄임. - 관리자 경로는 이제 라우터 가드에서 로그인/관리자 여부를 먼저 확인하고, 권한이 없으면 관리자 화면 자체에 접근하지 못하도록 홈으로 되돌림.
- 티어표 에디터의 커스텀 아이템 이름 편집 목록은 입력 중 실시간 라벨 정렬을 제거해, 입력 도중 포커스가 풀리거나 글자가 끊기던 현상을 막음.
- 게임 기본 아이템은 최신 추가 항목이 앞에 오도록 기본 정렬 기준을 바꾸고, 관리자 게임 관리 화면에서 현재 목록을 그대로 드래그해 순서를 저장할 수 있게 함.
- 관리자 대형 단일 뷰 정리를 시작하면서
목록/게임/아이템/티어표/회원 관리본문을 섹션 컴포넌트로 분리해,AdminView.vue는 상태·모달·사이드바 중심 셸로 가볍게 정리함. - 관리자 리팩터링 2차로
게임 관리와템플릿 요청 처리로직을useAdminGameManager,useAdminTemplateRequestscomposable로 분리해,AdminView.vue스크립트에서도 섹션별 책임이 더 명확해지도록 정리함.
2026-04-01 v1.3.49
- 티어표 에디터의 템플릿 요청 흐름은 저장된 티어표를 기준으로만 요청을 보낼 수 있도록 다시 정리하고, 요청 모달의
내 티어리스트에도 저장분기는 제거함. 제목이 비어 있는 상태에서 저장하면직접 티어표 만들기대신 랜덤한 고유 제목을 먼저 부여해 저장본을 만들고, 그 이후에만 템플릿 요청 버튼이 노출되도록 맞춤. - 관리자
사용자 템플릿 요청카드는전체 티어표 관리와 같은 카드 문법으로 유지하되, 썸네일은 상단에 고정된 클릭 진입점으로 다시 정리하고 카드 본문과 별도 입력 영역의 밀도를 맞춤. - 템플릿 요청 미리보기는 일반 티어표 완성본과 같은 보드 문법으로 다시 구성하고,
cells기반 배치 아이템도 남은 아이템 계산에 정확히 반영해 요청 미리보기와 일반 완성본 보기의 차이를 줄임.
2026-04-01 v1.3.48
- 관리자 화면은 새로고침 직후에도
티어표 관리 / 회원 관리목록이 비지 않도록, 관리자 인증이 확정되거나 탭이 바뀔 때 해당 목록을 다시 불러오는 흐름으로 보강함. - 관리자 아이템 모달은 내부 스크롤바를 숨기고 스크롤 체인을 끊어 배경이 함께 움직이지 않게 했고, 게임 선택 패널과 본문 패널의 상단 정렬도 다시 맞춤.
- 템플릿 요청 미리보기는 누락돼 있던
requestPreview__frame / __header스타일을 보강해 일반 티어표 완성본과 더 비슷한 내부 프레임 구조와 보드 밀도로 다시 정리함.
2026-04-01 v1.3.47
- 관리자
사용자 템플릿 요청카드는 별도 요청 전용 레이아웃 대신전체 티어표 관리와 같은 카드 문법으로 맞추고, 왼쪽 썸네일 클릭으로 같은 미리보기 모달이 열리도록 정리함. - 새 템플릿 요청에는 썸네일 아래에
게임 이름 / 게임 ID입력을 두고, 초기게임 ID는new-template대신 요청 ID 기반의 임시 고유값으로 채워 나중에 수정하기 쉽게 바꿈. - 요청 카드 오른쪽에는 제목, 설명, 요청 메타, 추가 아이템 목록, 승인/반려 버튼을 같은 정보 계층으로 배치해 전체 티어표 관리와 읽는 흐름을 통일함.
2026-04-01 v1.3.46
- 관리자
전체 티어표 관리의 썸네일 영역은 카드 좌측 전체가 눌리는 버튼처럼 보이지 않도록 이미지 영역만 상단에 붙여 클릭 진입점으로 유지하고, 카드 본문과의 시각적 분리를 다시 다듬음. 템플릿 요청 관리미리보기는 별도 썸네일 요약형이 아니라, 제목·설명·행/열 보드·남은 아이템이 하나의 내부 프레임 안에서 이어지는 실제 티어표 완성본형 레이아웃으로 다시 정리함.
2026-04-01 v1.3.45
- 템플릿 요청에서
내 티어리스트에도 저장이 켜져 있을 때 발생하던 500 오류는 새 저장본 생성 시tierlists.id에undefined가 들어가던 문제였고, 이제saveTierList()가 생성 시 자동으로nanoid()를 부여하도록 고쳐 저장 분기 자체를 안정화함. - 사용자에게 노출되던
백엔드를 재시작해주세요문구는 제거하고, 저장 분기 실패 시에도 일반적인 재시도 안내만 보이도록 조정함. - 루트에 잘못 남아 있던
update.md진입점 파일은 제거하고, 업데이트 기록은 다시docs/update.md한 곳으로 정리함.
2026-04-01 v1.3.44
- 관리자
전체 티어표 관리에서는 별도완성본 보기버튼은 다시 두지 않되, 카드 썸네일 자체를 눌러 기존처럼 완성본 미리보기 모달을 열 수 있게 복구함. 템플릿 요청 관리의 요청 미리보기는 요약 썸네일 중심 레이아웃을 줄이고, 실제 보드 구조를 먼저 읽는 방향으로 정리해 일반 티어표 완성본을 보는 흐름과 더 비슷하게 맞춤.
2026-04-01 v1.3.43
- 템플릿 요청 모달은
내 티어리스트에도 저장토글 상태를 요청 직전에 별도로 고정해 사용하도록 바꿔, 모달이 닫히며 draft가 초기화된 뒤 성공 토스트가 반대로 나오던 문제를 바로잡음. - 따라서 저장을 끈 상태에서는
요청만 보냈어요문구가 정확히 유지되고, 저장을 켠 상태에서 500이 나는 경우에는 저장 단계에서 실패했다는 안내를 더 분명하게 보여주도록 보강함.
2026-04-01 v1.3.42
- 템플릿 요청 시
내 티어리스트에도 저장이 켜져 있을 때만 500 오류가 날 수 있던 레거시tierlists.source_tierlist_idnullability 문제도 함께 보강해, 오래된 DB 스키마에서도 요청 전 저장 흐름이 막히지 않도록 정리함. - 따라서 템플릿 요청 관련 레거시 호환 보정은
template_requests와tierlists양쪽에 모두 반영됐고, 실제 적용을 위해서는 백엔드 재시작 후 재확인이 필요함.
2026-04-01 v1.3.41
- 템플릿 요청 등록 시 500 오류가 날 수 있던 레거시 DB 호환 문제를 보강해, 기존
template_requests테이블에request_type,source_game_id,target_game_id,status컬럼이 빠져 있어도 서버 시작 시 자동으로 마이그레이션되도록 함. - 따라서 저장 여부와 무관하게 템플릿 요청 흐름은 유지되고, 구버전 DB를 사용 중이더라도 백엔드 재시작 후 같은 요청이 정상 저장되도록 안정성을 높임.
2026-04-01 v1.3.40
- 관리자 아이템 상세 모달은 내부 스크롤바를 숨기고 본문 스크롤이 배경으로 전파되지 않도록 body scroll lock과 ESC 닫기를 추가해, 검수 중 배경 화면이 함께 움직이던 불편을 줄임.
- 관리자 티어표 관리에서는
완성본 보기흐름을 제거하고, 전체 티어표의 추가 아이템을 클릭하면 같은 아이템 관리 모달로 열어 게임 검색·템플릿 추가·새 템플릿 생성까지 같은 문법으로 처리할 수 있게 통일함. - 템플릿 요청 관리의
요청 미리보기는 단순 썸네일이 아니라 행·열 구조, 열 이름, 배치된 아이템, 미사용 아이템까지 함께 보이는 실제 보드형 미리보기로 다시 구성해 요청 내용을 한 번에 검수할 수 있게 함.
2026-04-01 v1.3.39
- 관리자 템플릿 요청 미리보기는 요청 시 저장된 보드 스냅샷이 비어 있을 경우 요청 아이템 배열을 fallback으로 사용해, 대표 썸네일만 보이는 상황을 줄이고 요청 내용을 더 안정적으로 확인할 수 있게 보정함.
- 관리자 아이템 상세 모달에는 아이템 이름 입력과 저장 버튼을 추가해, 템플릿 아이템·사용자 업로드·보관 자산 모두 파일명과 무관하게 사람이 읽기 좋은 이름으로 다시 정리할 수 있게 함.
- 보관 자산용 image asset에는 이름 override 컬럼을 추가해, 무작위 WebP 파일명을 그대로 노출하지 않고 라이브러리 표시명만 따로 관리할 수 있게 확장함.
2026-04-01 v1.3.38
- Settings 화면 오른쪽 사이드의 테마 설정 패널은 다시 쓰기 전까지 숨김 처리하고, 현재 기본 다크모드를 유지한 채 다른 화면과 동일하게 스폰서 광고만 노출되도록 정리함.
- 관리자 아이템 모달에서 템플릿에 사용 중인 게임 배지는 다크모드에서도 읽히는 텍스트 색으로 맞추고, hover/focus 전환 효과를 추가해 상호작용이 더 분명하게 보이도록 보강함.
- 관리자 아이템 모달은 데스크톱에서 최소 폭을 800px로 늘리고 최대 높이를 뷰포트 안으로 제한했으며, 16:9 이미지는 높이 상한을 둬서 모달이 넓어질 때도 이미지와 하단 버튼이 과하게 뭉개지지 않도록 정리함.
2026-04-01 v1.3.37
- 가이드 모달은 모바일에서 왼쪽 단계 목록 대신 현재 단계만 선택하는 셀렉트형 피커를 중심으로 쓰도록 높이와 내부 스크롤 구조를 다시 잡아, 작은 화면에서도 내용이 잘리지 않고 조작할 수 있게 정리함.
- 관리자 아이템 상세 모달은 가이드 모달과 같은 큰 2단 셸 문법으로 다시 묶어, 왼쪽 게임 선택 패널과 오른쪽 이미지·메타·액션 영역이 더 넓고 여유 있게 보이도록 재구성함.
- 아이템 상세 모달 내부 정보 카드와 액션 영역도 같은 톤의 패널형 블록으로 정리해, 가이드와 관리자 모달 사이의 시각적 통일감을 높임.
2026-04-01 v1.3.36
내 티어표화면 헤더를 공통pageHead문법으로 통일하고, 라이트모드에서는 공통railHeader배경을 사이드 레일과 같은 톤으로 맞춰 화면 간 상단 밀도 차를 줄임.- 관리자 아이템 상세 모달은 더 넓은 비율로 키우고, 템플릿에 연결된 게임 이름은 hover 가능한 버튼으로 바꿔 클릭 시 해당 게임이 선택된
게임 관리탭으로 바로 이동할 수 있게 함. - 관리자 아이템 라이브러리는 이제 게임에 연결된 템플릿 이미지뿐 아니라 연결이 해제된
/uploads/assets/보관 자산도 함께 보여줘, 게임 목록에서 아이템을 제거해도 아이템 관리에서는 계속 검수·재연결할 수 있게 정리함. - 아이템 관리 탭은 다른 탭으로 이동했다가 돌아오면 검색어와 필터를 초기화해, 결과가 남아 있어 목록이 비어 보이는 오해를 줄이도록 조정함.
2026-04-01 v1.3.35
- 라이트모드에서 홈 게임 카드의 메타 텍스트와 대표 썸네일 플레이스홀더, 브랜드 타이틀 색을 다시 정리하고, 전체 밝기도 약간 눌러 눈부심이 덜한 회백색 톤으로 보정함.
- 관리자 아이템 상세 모달은 더 넓은 2단 레이아웃으로 키우고, 브라우저 뒤로가기 시 페이지 이탈 대신 모달이 먼저 닫히도록 히스토리 동작을 보강함.
- 아이템 라이브러리의 삭제 기준을 다시 정리해, 사용자 업로드는 어디에도 연결되지 않았을 때만 삭제하고 관리자 템플릿 이미지는 라이브러리에서도 해당 템플릿 항목을 제거할 수 있게 확장함.
2026-04-01 v1.3.34
- 관리자 아이템 관리 오른쪽 사이드에서는
가져올 게임셀렉트를 제거하고, 사용자 업로드와 관리자 템플릿 이미지를 함께 검수하는 라이브러리 흐름으로 단순화함. - 아이템 상세 모달은 좌측에 검색/정렬 가능한 게임 리스트를 두고 우측에 이미지·메타·액션을 배치하는 2단 레이아웃으로 재구성해, 많은 게임 속에서도 직접 검수 후 템플릿에 연결하기 쉽게 정리함.
- 아이템 라이브러리에는 이제 관리자 템플릿 이미지도 함께 표시하고, 배지로
사용자 업로드 / 관리자 템플릿을 구분하며 새 업로드 WebP 파일명에서는 시간 정보처럼 보이는 접두 숫자를 제거함. - 템플릿 아이템까지 함께 보이는 구조에 맞춰 삭제 API도 사용자 업로드이면서 템플릿에 연결되지 않은 항목만 지울 수 있도록 안전 장치를 보강함.
2026-04-01 v1.3.33
- 라이트모드/다크모드 2차 보정으로 관리자 화면과 티어 에디터의 카드, 패널, 입력창, 모달, 썸네일 프레임을 전역 테마 변수 기준으로 다시 맞춰, 후속 화면에서도 명도 차가 더 자연스럽게 이어지도록 정리함.
- 공통 셸도 함께 손봐서 좌측 사이드 아이콘 필터와 텍스트 대비를 테마 변수 기반으로 전환하고, 가이드 모달·축소 검색 모달·내비 활성 상태까지 라이트모드에서 읽기 쉬운 톤으로 보정함.
- 전역 스타일 변수의 다크 기본값과 아이콘 필터 값을 바로잡아, 카드 배경과 텍스트 변수의 자기참조/오동작 가능성을 줄이고 이후 테마 QA 기준을 더 안정적으로 맞춤.
2026-04-01 v1.3.32
- 전역 테마 변수와 로컬 저장 기반 테마 토글을 추가해, Settings 화면 오른쪽 사이드에서 라이트모드/다크모드를 전환하고 재방문 시 같은 테마를 유지할 수 있게 함.
- 앱 셸, 홈, 게임 허브, 내 티어표, 즐겨찾기, 검색, 로그인, 설정 화면의 공통 카드·입력·텍스트 색을 테마 변수 기준으로 바꿔, 주요 사용자 화면은 라이트/다크 전환이 자연스럽게 이어지도록 1차 정리함.
- 관리자 화면과 티어 에디터처럼 스타일 밀도가 높은 화면은 후속 단계에서 세부 톤을 더 정교하게 맞추도록 todo 기준도 갱신함.
2026-04-01 v1.3.31
- 관리자 게임 관리의 오른쪽 사이드 게임 선택 리스트는 더 많은 항목을 한 번에 볼 수 있도록 최대 높이를 늘리고, 게임 카드 내부 간격도 사용자가 조정한 CSS 기준으로 반영해 목록 밀도를 다시 다듬음.
2026-04-01 v1.3.30
- 헤더의
Tier Maker로고는 레인보우 그라데이션 텍스트로 바꿔 서비스 첫인상이 더 또렷하게 보이도록 정리하고,by zenn은 새 창으로 프로필 페이지를 여는 외부 링크로 연결함. - 다음 단계 작업용으로 라이트모드/다크모드 전환 항목을 todo 문서에 추가해, 현재의 다크 톤 UI를 유지하면서도 이후 테마 확장 흐름을 공식 작업 목록에 올림.
2026-04-01 v1.3.29
- 책 아이콘 사용법 모달 진입점은 항상 보이는 오른쪽 사이드 하단 버튼 대신, Settings 화면에서만 왼쪽 사이드 하단의 보조 액션 버튼으로 옮겨 더 필요할 때만 찾게 되는 문맥형 진입 방식으로 정리함.
- 인증 스토어에 초기 세션 동기화 완료 상태를 추가하고, 앱 셸·로그인 화면·프로필 화면은 세션 확인 전까지 비로그인 UI를 먼저 그리지 않도록 보강해 첫 진입 시 화면이 갑자기 로그인 상태로 뒤집히는 플래시를 줄임.
2026-04-01 v1.3.28
- 책 아이콘 기반 사용법 모달은 기존의 단순 제작 흐름 안내를 넘어, 다른 사람 티어표 복사, 템플릿 업그레이드 요청, 새 템플릿 추가 요청, 즐겨찾기/내 티어표 관리까지 포함한 전체 기능 안내 허브로 확장함.
- 사용법 모달 제목과 단계 표기를 더 넓은 개념의
기능 안내기준으로 정리하고, 실제 스크린샷이 없어도 설명만으로 핵심 기능을 순서대로 이해할 수 있게 단계 문구를 전면 보강함.
2026-04-01 v1.3.27
- 오른쪽 사이드 하단에 책 아이콘 진입점을 추가하고, 중앙 대형 사용법 모달을 열어 좌측 기능 리스트와 우측 16:9 설명 영역, 좌우 이동, 하단 페이지네이션까지 포함한 기본 가이드 흐름을 붙임.
- 사용법 모달의 스크린샷 영역은 우선 16:9 플레이스홀더와 설명 텍스트만 배치해, 실제 이미지 자산은 나중에 채워 넣을 수 있게 구조를 먼저 준비함.
2026-04-01 v1.3.26
- 오른쪽 사이드는 실제 광고 슬롯 기준을 300x600 세로 비율로 잡고, 데스크톱 우측 레일 폭도 325px로 조정해 300px 광고가 내부 패딩과 보더를 제외한 실폭 안에 자연스럽게 들어가도록 보정함.
2026-04-01 v1.3.25
- todo 문서에서는 운영 정책/배포 체크 성격 항목을 우선 제거하고, 제품/보안 후속 작업 중심으로 다시 정리함.
- 관리자 게임 관리는 우측 셀렉트 박스 대신 검색 가능한 리스트와 최신순/오래된순 정렬로 바꿔, 게임 수가 많아져도 실제로 선택 가능한 구조로 개선함.
- 로그인과 회원가입은 기존 세션을 그대로 덮어쓰지 않고 세션을 재생성한 뒤 사용자 정보를 저장하도록 바꿔, 세션 고정 공격 방어를 보강함.
2026-04-01 v1.3.24
- 게임 선택 후 보이는 공개 티어표 목록 그리드도 auto-fit 최대폭 방식 대신 4/3/2/1열 고정 반응형 규칙으로 바꿔, 넓은 화면에서 카드 한 장이 애매하게 다음 줄로 넘어가며 공백이 크게 남던 문제를 줄임.
2026-04-01 v1.3.23
- 내 티어표 목록 그리드는 auto-fit 최대폭 방식 대신 게임 목록과 같은 4/3/2/1열 고정 반응형 규칙으로 맞춰, 넓은 화면에서 카드 한 장이 애매하게 다음 줄로 떨어지며 여백이 크게 남던 문제를 줄임.
2026-04-01 v1.3.22
- 내 티어표 카드는 게임 목록과 같은 상단 히어로/패널 문법으로 다시 맞추고, 깨진 썸네일은 alt 텍스트가 카드 폭을 밀지 않도록 플레이스홀더로 즉시 대체해 카드 수와 헤더 폭이 흔들리지 않게 보정함.
- 오른쪽 사이드 광고 프레임은 별도 보더·패딩·배경을 제거해, 광고 자체가 가진 각진 형태와 색이 그대로 보이도록 더 담백하게 정리함.
2026-04-01 v1.3.21
- 내 티어표 카드는 게임 목록 화면과 같은 카드 폭/헤더/메타 배치 문법으로 맞춰, 화면 간 카드 크기와 정보 정렬이 더 통일된 인상으로 보이도록 정리함.
2026-04-01 v1.3.20
- 내 티어표 카드 그리드는 카드 최대폭 우선 규칙 대신 더 촘촘한 auto-fill 기준으로 조정해, 넓은 화면에서도 한 줄에 더 많은 카드가 자연스럽게 배치되도록 보정함.
2026-04-01 v1.3.19
- 관리자 Image Optimization 기간 선택은 연도/월을 가로로 나란히 두고, 연도를 고르기 전에는 월 셀렉트를 숨겨 비어 있는 박스처럼 보이던 상태를 없앰.
- 전체 초기화 버튼도 실제 월이 선택된 경우에만 보이도록 정리해, 사이드바 상단 필터 줄이 더 단정하게 보이도록 보정함.
2026-04-01 v1.3.18
- 커스텀 아이템 기본 이름은 파일명 전체를 그대로 쓰지 않고 확장자 제거·공백 정리·60자 제한을 먼저 적용하도록 바꿔, 템플릿 요청 전에 커스텀 업로드가 길이 제한으로 실패하던 흐름을 줄임.
- 템플릿 요청 실패 안내는 커스텀 이미지 업로드 실패와 일반 bad request를 구분해, 사용자가 제목/설명/아이템 이름 길이 제한 문제를 더 쉽게 파악할 수 있게 보강함.
- 관리자 Image Optimization 월 필터는 기본 month input 대신 연도/월 셀렉트와 전체 초기화 버튼으로 바꿔, 기간 선택을 더 직관적으로 조작할 수 있게 정리함.
2026-04-01 v1.3.17
- 티어 에디터 열 헤더 입력창과 행 라벨은 좌우 패딩을 대칭으로 다시 잡아, 드래그 핸들과 삭제 아이콘이 있어도 제목이 한쪽으로 쏠려 보이지 않도록 보정함.
- 열 삭제도 이제 행 삭제와 같은 확인 모달을 거쳐 진행되도록 바꿔, 실수로 즉시 제거되던 문제를 막음.
- 내보내기 보드는 여전히 960px 고정 폭이라 열 수가 늘수록 각 칸 폭이 줄어드는 구조라는 점을 기준으로 정리했고, 현재 보정은 헤더 정렬 문제를 우선 해결하는 쪽에 맞춤.
2026-04-01 v1.3.16
- 티어 에디터의 행 삭제와 열 삭제는 다시 작은 X 아이콘 액션으로 정리해, 행/열 이름 주변의 반복 텍스트 때문에 보드가 답답해 보이던 문제를 줄임.
- 열 헤더 편집 영역은 입력창 오른쪽에 아이콘 삭제만 남기고, 행 라벨도 상단 우측의 작은 제거 버튼으로 맞춰 더 압축된 편집 밀도를 유지하도록 조정함.
- 저장 이미지에서 열 제목이 살짝 위로 떠 보이던 문제는 내보내기 헤더의 비대칭 패딩을 제거하고 flex 중앙 정렬로 바꿔, 시각적으로 정확한 중앙에 오도록 보정함.
2026-04-01 v1.3.15
- 티어 에디터의 열 이름은 각 행 안에서 반복 렌더링되지 않도록 공통 상단 헤더로 분리해, 행 제목과 같은 구조로 더 또렷하게 구분되도록 수정함.
- 행 추가/열 추가 액션은 새 SVG 아이콘 버튼으로 압축해, 텍스트 때문에 보드 상단 툴바 높이가 과하게 커지던 문제를 정리함.
- 미리보기와 삭제 모달 문구도 행/열 기준으로 함께 정리해, 전체 티어 에디터 흐름을 더 일관된 용어와 레이아웃으로 다듬음.
2026-04-01 v1.3.14
- 티어 에디터를 단일 세로 랭크형에서 행/열 혼합 보드로 확장해, 공격·방어·지원 같은 가로 열을 추가하고 각 열 이름도 직접 입력할 수 있게 함.
- 에디터 액션 문구를
행 추가 / 열 추가기준으로 정리하고, 행 라벨 폭과 드래그 아이콘 위치를 다듬어 실제 사용 빈도에 맞는 더 압축된 보드 레이아웃으로 보정함. - 이름 오버레이 정렬과 저장용 미리보기 보드도 함께 손봐서, 이미지 다운로드 시 라벨 텍스트가 하단 중앙에 더 안정적으로 배치되도록 수정함.
2026-04-01 v1.3.13
- 템플릿 등록/업데이트 요청 모달은 이제 현재 티어표 제목·설명을 기본값으로 가져오고, 비어 있더라도 모달 안에서 바로 작성해 요청할 수 있도록 흐름을 단순화함.
- 템플릿 요청 시
내 티어 리스트에도 저장토글을 추가해, 요청 스냅샷만 관리자에게 전달할지 아니면 현재 양식도 내 티어표로 함께 저장할지 분리함. - 관리자 템플릿 요청 관리는 더 이상 원본 티어표 링크에 의존하지 않고, 요청 시점의 그룹/아이템/이름표시 상태를 그대로 담은 스냅샷 미리보기를 직접 열어 확인할 수 있게 확장함.
2026-04-01 v1.3.12
- 관리자 회원 관리 상단에 정렬 방향 선택을 추가해, 최근 활동순·가입순·작성 티어표순을 각각 오름차순/내림차순으로 다시 볼 수 있게 확장함.
- 회원 정보 수정, 새 게임 생성, 비밀번호 초기화 모달은 Settings 톤 입력 스타일을 유지하면서 각 입력칸에 글자 수 피드백을 함께 보여주도록 정리함.
- 로그인, 설정, 티어 에디터 제목·설명·요청 제목·요청 설명·티어 행 이름에도 최대 길이와 현재 입력 길이 안내를 붙여, 제출 전에 제한을 바로 인지할 수 있게 개선함.
2026-04-01 v1.3.11
- 회원 관리 편집 모달 전환: 관리자 회원 카드를 읽기 전용 정보 카드로 바꾸고,
회원 정보 수정버튼으로 Settings 톤의 편집 모달에서 이메일/닉네임/운영자 권한을 저장하도록 재구성 - 회원 검색/정렬 추가: 회원 관리 상단에 이메일/닉네임 검색과
최근 활동순,가입순,작성 티어표 많은 순정렬을 추가해 운영자가 원하는 기준으로 목록을 다시 볼 수 있도록 확장 - 최고 관리자 보호 도입: 가장 먼저 생성된 관리자 계정을
최고 관리자로 구분하고, 운영자는 최고 관리자 권한/아바타/비밀번호/삭제를 변경할 수 없도록 백엔드 보호 로직과 역할 메타데이터를 추가
2026-04-01 v1.3.10
- 게임 허브 공개 티어표 카드 그리드는 최소/최대 폭을 고정해, 목록이 1~2장뿐일 때도 카드가 화면 전체를 먹으며 과하게 커지지 않도록 보정함.
- 티어표 행 삭제는 상단 아이콘 대신 우측 하단의 작은 텍스트 액션으로 바꿔, 랭크 카드 안에서 더 조용하고 정돈된 편집 흐름으로 정리함.
- 공통
SvgIcon컴포넌트를 추가하고 앱 셸, 홈 즐겨찾기, 관리자 회원 액션 같은 UI 아이콘은img대신 SVG 아이콘 컴포넌트로 렌더링하도록 전환함.
2026-04-01 v1.3.9
- 관리자 오른쪽 사이드의 Image Optimization 패널은 이제 기본 탭인 목록 관리에서만 노출되도록 줄여, 게임/아이템/티어표/회원 관리 화면에서는 실제 작업 패널에 더 집중할 수 있게 정리함.
- 커스텀 아이템 상세의 '이미 사용 중인 게임' 목록에서는 개인 보드용 freeform 템플릿을 제외하고, 실제 템플릿에 연결된 게임만 보이도록 다듬음.
- 티어표 행 삭제는 큰 버튼 대신 우측 상단의 작은 x 아이콘으로 바꾸고, 삭제 시 아이템이 풀 영역으로 돌아간다는 안내를 포함한 확인 모달을 거친 뒤 삭제되도록 개선함.
2026-03-31 v1.3.8
- 홈 화면 게임 즐겨찾기 버튼은 일반 문자 별 대신 'kid_star.svg' 아이콘을 사용하도록 바꿔, 기존 아이콘 시스템과 같은 문법으로 정리함.
- 실제로 더 이상 참조되지 않는 예전 업로드 파일을 정리하는 레거시 업로드 클린업 스크립트를 추가하고, 루트/백엔드 실행 스크립트도 함께 연결함.
- todo 문서도 이제 운영 반영 후 레거시 파일 정리 배치를 주기화하는 쪽으로 기준을 갱신함.
2026-03-31 v1.3.7
- 현재 참조 중인 레거시 업로드를 다시 최적화 자산 경로로 편입하고 DB 참조를 일괄 교체하는 1회 마이그레이션 스크립트를 추가함.
- 아바타/썸네일/아이템 역할에 따라 기존 업로드를 512px 또는 1280px 규격으로 다시 정리해, 실제 참조 경로도 '/uploads/assets/' 체계에 점진적으로 수렴시킬 수 있게 함.
- 루트와 백엔드에 레거시 마이그레이션 실행 스크립트를 연결하고, todo 문서도 다음 단계 기준으로 갱신함.
2026-03-31 v1.3.6
- 현재 참조 중인 레거시 업로드 파일을 'image_assets' 메타에 안전하게 편입하는 1회 백필 스크립트를 추가해, 과거 이미지도 최적화 대시보드와 같은 통계 체계 안에서 집계할 수 있게 함.
- 루트와 백엔드에 백필 실행 스크립트를 연결해 운영 중 필요할 때 즉시 재실행할 수 있도록 정리함.
- todo 문서의 즉시 확인 항목도 백필 완료 상태에 맞춰 후속 마이그레이션 과제로 갱신함.
2026-03-31 v1.3.5
- 관리자 이미지 최적화 대시보드는 이제 'image_assets'만이 아니라 현재 실제로 참조 중인 업로드 파일 전체를 합산해, 기존 레거시 업로드까지 포함한 실사용 용량을 함께 보여주도록 확장함.
- 최근 최적화 작업은 기본 12건으로 늘리고 6/12/24건 선택과 월 단위 필터를 지원해, 특정 기간 사용량과 최적화 이력을 운영 관점에서 바로 확인할 수 있게 정리함.
- 관리자에서 월별 또는 전체 최적화 기록을 비우는 정리 액션을 추가하고, todo 문서도 현재 이미지 최적화 흐름에 맞게 갱신함.
2026-03-31 v1.3.4
- 관리자 API에 이미지 자산 통계 엔드포인트를 추가해 총 자산 수, 현재 용량, 원본 대비 절감 용량/절감률, 작업 누적 상태를 조회할 수 있게 확장함.
- 관리자 오른쪽 사이드 하단에
Image Optimization패널을 추가해 큐 상태, 절감 통계, 최근 최적화 작업을 바로 확인할 수 있도록 대시보드를 구성함. - 미사용 자산 정리 API와 작업 기록 큐를 기반으로, 운영 중 이미지 스토리지 상태를 관리자 화면에서 직접 점검할 수 있는 흐름을 완성함.
2026-03-31 v1.3.3
image_assets참조를 전수 점검해 아무 곳에서도 사용하지 않는 최적화 이미지 자산만 추려내는 정리 배치 로직을 추가함.- 관리자용 미사용 자산 조회/정리 API를 추가해 오래된 고아 이미지 자산을 미리 확인하거나 실제로 삭제할 수 있도록 확장함.
- 관리자 승격/템플릿 생성 과정은 기존
/uploads/assets/자산을 그대로 재사용하도록 바꿔, 불필요한 복제 파일이 다시 생기지 않게 정리함.
2026-03-31 v1.3.2
- 업로드 최적화는 이제 백엔드 내부 대기열을 통해 처리되어, 다수 이미지가 한 번에 들어와도 설정된 동시성 안에서 순차적으로 안정적으로 변환되도록 정리함.
image_optimization_jobs작업 기록 테이블을 추가해 queued/processing/completed/failed 상태와 원본·최적화 용량, 재사용 여부, 시작/종료 시각을 저장하도록 확장함.- 현재 라우트 응답 방식은 유지하면서도 내부적으로는 큐를 타도록 구조를 바꿔, 이후 관리자 대시보드와 작업 통계 화면을 바로 얹을 수 있는 기반을 마련함.
2026-03-31 v1.3.1
- 최적화된 WebP 결과물 기준으로 SHA-256 해시를 계산해, 같은 이미지가 다시 업로드되면 새 파일을 저장하지 않고 기존 자산을 재사용하도록 중복 이미지 해시 검사를 추가함.
- 이미지 자산 메타데이터를 저장하는
image_assets테이블을 도입해 파일 경로, 해시, 원본 대비 최적화 용량, 해상도를 함께 기록하도록 확장함. - 중복 업로드 경쟁 상황에서도 고유 해시 충돌을 안전하게 처리하고, 새 파일 저장에 실패하면 즉시 정리하도록 업로드 헬퍼를 보강함.
2026-03-31 v1.3.0
- 백엔드 업로드 파이프라인을 메모리 기반으로 전환하고, 대표 썸네일·게임 썸네일·커스텀 아이템·게임 기본 아이템·아바타를 서버에서 즉시 WebP로 변환해 저장하도록 정리함.
- 아이템 이미지는 최대 512px 규격으로 리사이즈하고, 티어표/게임 썸네일은 긴 변 기준 1280px 안쪽으로 최적화해 원본 이미지를 별도로 보관하지 않는 흐름으로 전환함.
- 업로드 최적화 공통 헬퍼를 추가해 앞으로 중복 해시 검사, 비동기 최적화 큐, 용량 통계 대시보드를 같은 경로 위에 확장할 수 있는 기반을 마련함.
2026-03-31 v1.2.73
- 게임 허브 리스트형 보기의 썸네일을 48px 밀도로 축소해 한 줄이 과하게 커 보이던 인상을 줄이고, 더 많은 티어표를 한눈에 볼 수 있게 조정함.
- 깨진 대표 썸네일은
imgalt 텍스트가 길게 노출되지 않도록 에러 시 즉시 플레이스홀더로 대체하고, 제목/메타 말줄임을 더 보강해 레이아웃 붕괴를 막음.
2026-03-31 v1.2.72
- 게임 허브 공개 티어표 목록은 카드 폭과 제목/메타 줄 계산을 다시 조정해, 브라우저 폭에 따라 썸네일과 정보가 카드 밖으로 넘치던 레이아웃 깨짐을 보정함.
- 상단 워크스페이스 헤더에 grid/list 보기 토글을 추가하고, 게임 허브는 그리드 카드형과 가로 리스트형을 즉시 전환해 볼 수 있도록 확장함.
2026-03-31 v1.2.71
- 게임 허브 공개 티어표 카드는 자동 폭 그리드와 2줄 제목/유연한 메타 배치로 보정해, 브라우저 폭이 줄어들어도 썸네일과 텍스트가 카드 밖으로 넘치지 않도록 정리함.
- 공개 티어표 상세에서는 다른 사용자의 티어표를 복사해 내 작업본으로 가져오는 기능을 추가하고, 복사본에는 원본 제목/작성자 정보를 작은 출처 메모로 남기도록 확장함.
- 보기 전용 티어표의 미배치 아이템은 더 어둡고 흐리게 표시하고
미배치상태를 붙여, 내 보드처럼 조작 가능한 인상을 줄이도록 보정함.
2026-03-31 v1.2.70
- 관리자 게임 관리의 썸네일 드롭존을 카드 안 카드 구조 대신, 썸네일 전체 위에 하단 오버레이 문구를 얹는 단일 미디어 영역으로 정리함.
- 게임 관리 본문 상단 안내 패널과 과한 설명 문구를 제거하고, 비선택 상태는
게임을 선택해 주세요.한 줄 중심의 empty 상태로 단순화함. - 새 게임 생성 버튼은 게임 선택과 함께 오른쪽 사이드로 옮겨, 게임 관리 흐름을 선택·생성·썸네일 지정까지 한쪽 패널에서 처리하도록 정리함.
2026-03-31 v1.2.69
- 좌우 사이드 축소/확대 시 텍스트를 즉시
display:none처리하던 방식을 줄이고, 폭·투명도 기반 전환으로 바꿔 아이콘이 떨리는 듯한 느낌을 완화함. - 관리자 게임 관리는 오른쪽 사이드에서 게임 선택과 썸네일 지정을 담당하도록 재배치하고, 본문은 기본 아이템 추가/이름 입력/목록 관리에 집중하도록 정리함.
- 게임 기본 아이템 추가는 업로드 직후 각 파일 이름을 바로 수정할 수 있는 draft 입력 행을 넣고, 선택한 이름이 서버에 함께 저장되도록 관리자 업로드 API를 확장함.
2026-03-31 v1.2.68
- 내 티어표 카드 그리드는 각 카드가 화면 전체 너비를 과도하게 먹지 않도록 최대 폭을 제한해, 1~2개만 있을 때도 적당한 카드 크기를 유지하도록 조정함.
- 새 티어표 기본 그룹은 기존 S/A/B/C/D 5줄 대신 S/A/B/C 4줄로 시작하게 바꾸고, 좌우 사이드 토글 아이콘 버튼은 외곽선과 배경을 제거해 더 가볍게 정리함.
2026-03-31 v1.2.67
- 홈 화면 게임 템플릿 즐겨찾기 버튼 위치 변경은 유지하면서, 즐겨찾기 on/off 시 카드가 즉시 튀지 않고 부드럽게 재정렬되도록 이동/페이드 전환을 추가함.
- 별 아이콘을 눌렀을 때 카드가 즐겨찾기 우선순위 위치로 자연스럽게 이동해 전체 라이브러리 전환감이 덜 거칠게 보이도록 보정함.
2026-03-31 v1.2.66
- 내 티어표 카드 하단의 큰 삭제 버튼은 제거하고, 삭제는 상세 편집 화면에서만 하도록 흐름을 단순화함.
- 내 티어표 카드 그리드를 고정 4/3/2열에서
auto-fit기반 최소 폭 카드로 바꾸고, 제목/메타가 좁은 화면에서도 말줄임과 유연한 폭 계산을 유지하도록 보정함.
2026-03-31 v1.2.65
- 에디터 옵션 토글의 라벨과 스위치 순서를 바꾼 뒤 체크 상태 셀렉터가 끊긴 문제를 보정해, 왼쪽 라벨·오른쪽 스위치 배치에서도 정상 동작하도록 수정함.
- 왼쪽 사이드 축소 상태 검색은 전용 모달의 기본 스타일이 빠져 있던 문제를 복구해, 다시 중앙 상단 검색 오버레이로 열리도록 정리함.
2026-03-31 v1.2.64
- 메인 콘텐츠가 길어질 때 스크롤 끝이 화면 바닥에 붙지 않도록 중앙 워크스페이스 하단 여백을 추가하고, 긴 작업 화면에서도 마감선이 답답하지 않게 보정함.
- 템플릿 요청 모달 입력창을 Settings 화면과 같은 어두운 언더라인 입력 문법으로 통일하고, 에디터의 공개/이름 표시 옵션은 체크박스 대신 스위치형 토글로 재구성함.
2026-03-31 v1.2.63
- 앱 셸과 워크스페이스에 걸려 있던 고정
100dvh높이를 풀어, 본문이 길어질 때 중앙main영역이 잘리거나 접히는 현상을 보정함. - 좌우 레일은 그대로 화면 기준 높이를 유지하되, 중앙 작업 영역은 내용만큼 자연스럽게 늘어나도록 높이 계산을 다시 정리함.
2026-03-31 v1.2.62
- 템플릿 요청 모달의 제목/설명 입력을 Settings 화면과 같은 어두운 입력 문법으로 맞춰 흰 배경/흰 글자처럼 보이던 문제를 정리함.
- 앱 셸은 사이드 기본 바탕색을 중심으로 재정리하고, 중앙 바디에 배경과 좌우 보더를 줘 긴 스크롤에서도 사이드가 잘리는 듯한 인상을 줄이도록 조정함.
2026-03-31 v1.2.61
- Game Library 왼쪽 검색을 전체 티어표 검색이 아니라 게임 템플릿 검색으로 바꾸고, 홈 화면에서 검색어에 맞는 게임만 필터링하도록 조정함.
- 게임 템플릿에 사용자별 즐겨찾기 별 아이콘을 추가하고, 즐겨찾기한 게임이 관리자 고정 순서보다 우선 노출되도록 백엔드와 홈 화면을 함께 확장함.
- 앱 셸의 100vh 높이 계산을 100dvh와 고정 행 구조로 정리해, 콘텐츠가 없어도 생기던 불필요한 세로 스크롤을 줄임.
2026-03-31 v1.2.60
- 관리자 티어표 관리 카드에서 사용자가 입력한 설명을 제목 아래에 함께 노출해 요청 의도를 더 빨리 파악할 수 있게 함.
- 템플릿 등록/업데이트 요청은 이제 에디터 모달에서 제목과 설명을 별도로 입력받고, 예시 문구와 함께 전송하도록 정리함.
2026-03-31 v1.2.59
- 관리자 아이템 상세 모달의 게임 선택을 전용 상태로 분리해 기본 선택값이 비어 있도록 바꾸고, 썸네일 아래에 배치해 정보/액션과 시각적으로 분리함.
- 커스텀 아이템이 실제로 사용 중인 게임 목록을 백엔드에서 함께 내려주고, 템플릿 요청 생성 폼에는 게임 ID와 게임 이름 라벨을 추가해 구분을 명확히 함.
2026-03-31 v1.2.58
- 관리자 아이템 관리 카드를 썸네일과 제목만 보이는 compact 카드로 줄여, 대량 업로드된 이미지도 훨씬 높은 밀도로 탐색할 수 있게 정리함.
- 카드 클릭 시 상세 정보를 모달로 열고 이미지 다운로드, 기본 템플릿 추가, 삭제를 모달 안에서 결정하는 흐름으로 바꿈.
2026-03-31 v1.2.57
- 관리자 오른쪽 사이드에서 Featured, Game Summary, Users 패널을 완전히 제거하고, 티어표 요청 모드에는 모드 전환 탭만 남기도록 정리함.
2026-03-31 v1.2.56
- 관리자 아이템 관리 카드 그리드에 최대 폭을 줘서 결과가 1~2개일 때 카드가 과하게 늘어나지 않도록 조정함.
- 관리자 오른쪽 사이드에서 Featured, Game Summary, Users 요약 패널과 티어표 요청 새로고침/대기 개수 영역을 제거해 중복 정보를 정리함.
2026-03-31 v1.2.55
- 관리자 게임 관리 썸네일 입력을 파일 버튼 대신 클릭/드래그형 드롭존으로 바꿔 에디터 쪽 업로드 경험과 맞춤.
- 관리자 아이템 관리 카드를 세로 카드 구조로 재정리해 긴 파일명과 버튼 문구에도 레이아웃이 무너지지 않도록 보정함.
2026-03-31 v1.2.54
- 관리자 게임 상세 로딩 전에 호출되던 preview reset helper를 복구해, 게임 선택 시 런타임 오류로 상세 패널이 비어 있던 문제를 보정함.
- 선택 실패 시 원인을 더 쉽게 확인할 수 있도록 로딩 실패 안내와 콘솔 에러 로그를 추가함.
2026-03-31 v1.2.53
- 관리자 게임 관리에서 새 게임 만들기 카드를 제거하고, 헤더 버튼으로 여는 모달 기반 생성 흐름으로 정리함.
- 게임 선택은 명시적인 변경 핸들러로 다시 묶어 선택 즉시 상세 정보를 불러오도록 보강함.
2026-03-31 v1.2.52
- 관리자 게임 관리에서 선택 이벤트를 놓치지 않도록
selectedGameId와 탭 진입 시점을 감시해 상세 정보를 자동으로 다시 불러오도록 보정함. - 선택 후 잠시 비어 보이던 구간을 줄이기 위해 로딩 상태와 선택된 게임 ID 안내를 추가함.
2026-03-31 v1.2.51
- 운영 비밀값이 들어 있는
.env.production과 로컬 에디터 설정.vscode/를.gitignore에 추가해 푸시 대상에서 제외함.
2026-03-31 v1.2.50
- 관리자 회원 아바타 삭제 버튼 조건을 명확히 하고 hover 표시를 visibility까지 포함해 보정해 다른 사용자 카드에서도 안정적으로 노출되도록 조정함.
- 삭제 배지 아이콘을 흰색으로 보정하고 어두운 배경 위에서 더 잘 보이도록 스타일을 다듬음.
2026-03-31 v1.2.49
- 관리자 회원 저장 후 통계 정보가 흔들리던 문제를 줄이기 위해 저장/아바타 변경 뒤 회원 목록을 다시 동기화하도록 보정함.
- 회원 아바타 액션을 hover 기반으로 재배치해 평소에는 숨기고, 마우스 오버 시에만 수정 오버레이와 삭제 버튼이 나타나도록 조정함.
2026-03-31 v1.2.48
- 관리자 회원 관리 배지를 Settings 화면의 Administrator 스타일로 통일하고, 카드 우측 상단에 걸치는 형태로 재배치함.
- 관리자 권한 체크박스를 제거하고 작은 텍스트 액션과 확인 모달을 거쳐 draft 상태만 바꾸는 흐름으로 정리함.
2026-03-31 v1.2.47
- 관리자 회원 관리에서 비밀번호 초기화와 삭제를 실제 모달 플로우로 연결하고, 저장 버튼은 회원 정보 변경 시에만 활성화되도록 정리함.
- 상단 휴지통 아이콘과 불필요 문구를 제거하고, 관리자도 회원 썸네일을 카드 안에서 바로 수정/삭제할 수 있게 보완함.
2026-03-31 v1.2.46
- 회원 액션 플로우 수정: 회원 카드의 불필요한 안내 문구와 상단 삭제 아이콘을 제거하고, 비밀번호 초기화/회원 삭제를 각각 전용 확인 모달로 재구성
- 저장 버튼 활성 조건 정리: 회원정보 저장은 필드가 실제로 바뀐 경우에만 활성화되고, 비밀번호 초기화와 삭제 아이콘은 즉시 사용할 수 있도록 조정
2026-03-31 v1.2.45
- 회원 카드 액션 재구성: 비밀번호 초기화와 회원 삭제를 아이콘 액션으로 축소하고,
회원정보 저장버튼은 실제 변경이 있을 때만 활성화되도록 조정 - 관리자 아바타 편집 지원: 관리자도 회원 아바타를 클릭해 변경하거나 삭제할 수 있도록 전용 업로드 API와 카드 UI를 추가
2026-03-31 v1.2.44
- 관리자 탭 구조 재정리:
목록 관리와게임 관리를 분리하고, 게임 생성/선택 흐름을 우측 사이드가 아닌 본문 전용 작업 화면으로 이동 - 회원/액션 레이아웃 정리: 회원 카드의 작성 수/최근 활동을 텍스트형 정보로 단순화하고, 관리 버튼의 줄바꿈이 어색하지 않도록 액션 그리드를 보정
2026-03-31 v1.2.43
- 이름 표시 옵션 추가: 티어 에디터 우측 옵션에
캐릭터 이름 표시토글을 추가하고, 보드 안에서는 이미지 하단 오버레이 라벨로 표시되도록 개선 - 저장/불러오기 연동: 이름 표시 옵션이 저장된 티어표와 다운로드 이미지에도 그대로 반영되도록 프런트/백엔드 저장 구조를 확장
2026-03-31 v1.2.42
- 에디터 보드 폭 기준 정리: 티어표 보드 영역을 저장 이미지 기준에 맞춰 최대 약
960px폭으로 묶고, 넓은 화면에서는 아이템 풀이 남는 공간을 더 가져가도록 조정 - 아이템 풀 카드형 통일: 넓은 화면에서도 우측 아이템 목록을 카드형 그리드로 바꿔 한 번에 더 많은 아이템을 보고 드래그할 수 있도록 개선
2026-03-31 v1.2.41
- 에디터 하단 아이템 풀 카드형 전환: 브라우저 폭이
980px이하로 줄어 아이템 풀이 티어표 아래로 내려오면, 세로 리스트 대신이미지 위 / 이름 아래카드형 그리드로 전환되도록 조정 - 소형 폭 열 수 최적화: 약
800px전후에서는 6열 그리드가 유지되고, 더 작은 폭에서는 4열/3열로 자연스럽게 줄어들며 긴 이름은 가운데 정렬된 말줄임 형태로 보이도록 정리
2026-03-31 v1.2.40
- 목록 카드 메타 정리:
내 티어표,즐겨찾기,검색 결과,게임 목록카드의 작성자 썸네일을 원형으로 통일하고, 메타 행 간격과 날짜 크기(10px)를 조정했으며 날짜 정렬을 위해boardCard__metaRow를align-items: flex-end로 보정 - 게임 허브 CTA 좌측 하단 이동: 게임 목록 화면의
새 티어표 만들기버튼을 오른쪽 사이드에서 제거하고, 왼쪽 하단 액션 영역으로 옮겨 관리자 메뉴와 같은 버튼 문법으로 정리 - 필수 우측 패널 자동 열기: 티어 메이커/관리자처럼 오른쪽 사이드 사용이 필요한 페이지는 패널이 닫혀 있더라도 진입 시 자동으로 열리게 해, 도구 접근성과 이후 광고 노출 흐름을 함께 보정
2026-03-31 v1.2.39
- 홈 하단 액션 재배치: 홈 오른쪽 사이드의
커스텀 티어표 만들기CTA를 제거하고, 로그인/관리자 메뉴가 있던 왼쪽 하단 액션 영역으로 옮겨 같은 버튼 문법으로 정리 - 우측 중복 액션 축소: 일반 화면에서 중복되던
로그인 하러가기계열 우측 CTA는 제거하고, 오른쪽 레일은 광고/도구 용도로만 유지하도록 단순화 - 회원가입 확인 입력 추가: 로그인 화면 회원가입 모드에 비밀번호 확인 필드를 추가하고, 버튼 문구를
로그인 / 가입하기 / 취소같은 한글 흐름으로 정리
2026-03-31 v1.2.38
- 로그인 화면 문법 통일: 로그인/회원가입 화면을 기존 카드형에서 Settings와 같은 단일 컬럼 계정 설정 스타일로 재구성해 두 화면의 톤을 통일
- 일반 우측 레일 광고 슬롯 전환: 에디터/관리자처럼 실제 도구가 필요한 화면을 제외하면 오른쪽 레일은 중복 액션 버튼 대신 AdSense 수직형 반응형 슬롯을 기본으로 표시하도록 정리
2026-03-31 v1.2.37
- 대표 썸네일 드래그 업로드 추가: 우측 대표 썸네일 영역도 드래그앤드롭으로 이미지를 받을 수 있게 하고, 여러 파일을 드롭하면 첫 번째만 사용된다는 안내 토스트를 표시하도록 수정
- 삭제/업데이트 요청 액션 경량화: 우측 하단의 삭제와 템플릿 업데이트 요청을 무거운 정식 버튼 대신 작은 보조 링크형 액션으로 정리해 실제 주 행동과 시각적으로 분리
- 확인 모달 보강: 템플릿 업데이트 요청과 티어표 삭제는 이제 브라우저 기본 얼럿 대신 전용 확인 모달을 통해 안내 후 진행되도록 변경
2026-03-31 v1.2.36
- 축소 검색 모달 재정의: 좌측 레일 축소 상태에서는 검색 아이콘 클릭 시 카드형 다이얼로그 대신, 화면 중앙보다 약간 위에 뜨는 단일 검색 바와 은은한 암전 오버레이로 재구성하고
ESC/바깥 클릭으로 닫을 수 있게 보정 - 드롭 영역 위치 재조정: 커스텀 이미지 추가 영역을 전체
editorCanvas하단이 아니라 왼쪽 티어표 컬럼 내부의 보드 바로 아래로 옮겨, 오른쪽 아이템 목록 길이와 무관하게 가까운 위치에서 추가할 수 있도록 수정
2026-03-31 v1.2.35
- 축소 좌측 검색 동작 수정: 접힌 상태의 검색 아이콘은 이제 즉시 모달을 열고, 일반 상태에서만 폼 제출이 되도록 분기해 실제 팝업이 보이도록 수정
- 우측 레일 높이 제한 해제: 공통
max-height: calc(100vh - 56px)규칙은 왼쪽 레일에만 남기고, 오버레이 상태를 포함한 오른쪽 레일은 별도 높이 제한 없이 내용 전체가 자연스럽게 흐르도록 조정 - 커스텀 업로드 영역 하단 이동: 커스텀 이미지 드래그 영역과 파일 선택 버튼을 아이템 풀 아래가 아니라 티어표 섹션 하단으로 옮겨, 긴 아이템 목록과 충돌하지 않도록 정리
2026-03-31 v1.2.34
- 축소 좌측 검색 팝업 추가: 왼쪽 레일이 접힌 상태에서 검색 아이콘을 누르면 즉시 검색 입력이 가능한 모달 팝업이 뜨도록 바꾸고, 셸 톤에 맞는 블러/글래스 스타일로 정리
- 에디터 빈 우측 섹션 제거: 티어 메이커 우측 패널의 네 번째 빈 박스는
즐겨찾기버튼 래퍼였고, 조건이 맞지 않을 때 박스만 남지 않도록 섹션 자체를 조건부 렌더링으로 수정 - 우측 레일 스크롤 구조 완화: 오른쪽 패널은 이제 본문 전체가 자연스럽게 세로 스크롤되고, 로컬 패널 루트의 불필요한 최소 높이를 제거해 내용이 늘어나도 잘려 보이는 느낌을 줄임
2026-03-31 v1.2.33
- 우측 패널 토글 위치 보정: 소형 해상도에서도 오른쪽 패널 열기 버튼이 본문 아래로 내려가지 않도록 워크스페이스 헤더 최상단 액션 영역으로 이동
- 모바일 좌측 레일 단순화: 모바일에서는 좌측 레일 접기 버튼을 숨기고, 축소 상태가 남아 있더라도 텍스트와 사용자 메타를 다시 보여주도록 보정해 아이콘만 덩그러니 남는 상황을 제거
- 모바일 축소 상태 자동 해제: 화면 폭이 모바일 범위로 들어오면 좌측 레일 축소 상태를 자동으로 풀어, 작은 화면에서는 항상 읽을 수 있는 메뉴 형태를 유지
2026-03-31 v1.2.32
- 왼쪽 레일 축소 상태 재정의: 축소 시 사용자 정보는 아바타만 남기고, 메뉴는 아이콘만 보이도록 숨김 처리해 중앙 정렬이 자연스럽게 되도록 정리
- 축소 레일 검색/관리자 처리 보정: 접힌 상태에서는 검색 입력을 숨기고 아이콘 중심으로 단순화했으며, 아이콘이 없는 하단 관리자 버튼은 축소 모드에서 숨김 유지
- 우측 패널 소형 해상도 오버레이 전환:
1200px이하에서는 오른쪽 패널을 고정 컬럼 대신 오버레이 패널로 띄우고, 본문 상단 쪽에 다시 열기 버튼을 배치해 패널을 잃어버리지 않도록 수정
2026-03-31 v1.2.31
- 사이드 아이콘 에셋 정리: 좌측
Favorites메뉴도 제공된favorite.svg를 사용하도록 바꿔, 다른 사이드 아이콘 및 패널 토글 SVG와 같은 자산 흐름으로 통일 - 프로필 아바타 삭제 UX 개선:
Settings에서 텍스트형이미지 제거버튼을 없애고, 아바타 썸네일 우측 상단의 고정 아이콘 버튼으로 삭제하도록 변경해 레이아웃 흔들림을 제거 - 셸 코드 정리:
App.vue의 비어 있던 감시 코드를 제거해 현재 사용자 수정 위에 불필요한 잔여 로직이 남지 않도록 정리
2026-03-31 v1.2.30
- 왼쪽 즐겨찾기 섹션 제거: 좌측 레일의
즐겨찾기 보기섹션을 삭제하고, 상단 내비의 즐겨찾기 메뉴만 진입점으로 유지 - Settings 화면 리디자인: 프로필 설정 화면을 카드형 대신 단일 컬럼의 미니멀한 계정 설정 레이아웃으로 재구성
- 아바타 클릭 업로드/삭제 UX: 파일 input 노출을 없애고, 아바타를 클릭해 이미지 업로드와 제거를 처리하는 최근 앱 스타일 인터랙션으로 변경
- 백엔드 아바타 제거 지원: 프로필 저장 API가 아바타 삭제 요청도 함께 처리하도록 확장
2026-03-30 v1.2.29
- 왼쪽 즐겨찾기 목록 제거: 좌측 레일의 최근 즐겨찾기 목록과 관련 데이터 로딩 로직을 제거하고,
즐겨찾기 보기링크만 유지하도록 단순화 - 불필요한 즐겨찾기 API 호출 제거: 사이드바 표시만을 위해 수행되던 즐겨찾기 목록 요청을 없애 초기 렌더 비용을 줄임
2026-03-30 v1.2.28
- 사이드 스크롤 영역 재분리: 좌우 레일에서 스크롤되는 콘텐츠 영역과 하단 액션 영역을 분리해, 상단 헤더 높이와 무관하게 버튼이 항상 최초 화면 안에 보이도록 수정
- 레일 바디 overflow 구조 수정: 레일 전체가 아니라 내부 콘텐츠만 스크롤되게 바꿔, 하단 버튼이 다시 스크롤 아래로 밀리는 문제를 해소
2026-03-30 v1.2.27
- 사이드 하단 버튼 즉시 노출: 좌우 하단 액션 버튼을 별도 푸터가 아니라 각 레일의 스크롤 바디 안으로 옮기고, 남는 공간을 밀어내는 spacer 구조로 바꿔 스크롤 없이도 처음부터 하단에 보이도록 수정
- 56px 하단 여백 제거: 기존 고정 푸터 높이와 추가 하단 패딩을 제거해, 하단 액션이 자연스럽게 레일 마지막 줄에 붙도록 정리
2026-03-30 v1.2.26
- 페이지 헤더 정렬 통일:
Games,내 리스트,즐겨찾기,Settings화면이 모두 같은 전역 헤더 문법과 높이를 사용하도록 정리해, 페이지 이동 시 상단 블록 위치가 미묘하게 흔들리던 문제를 완화 - 헤더 내부 패딩 제거: 워크스페이스 본문에 이미 좌우 여백이 있는 점을 반영해, 각 페이지 헤더 내부의 작은 추가 패딩을 제거하고 동일한 배치 규칙으로 맞춤
- Settings 헤더 문법 통일: 프로필 화면도 다른 목록 화면과 동일한 eyebrow/title/description 구조를 갖도록 보강해 전체 화면 톤을 통일
2026-03-30 v1.2.25
- 홈 게임 카드 썸네일 복구: 메인 게임 선택 카드는 상단 메인 썸네일을 다시 표시하고, 하단 ID 라인 옆의 작은 보조 표시만 제거하도록 보정
- 사이드 하단 버튼 고정 가시성 보정: 좌우 하단 액션 버튼이 스크롤을 해야 보이지 않던 문제를 수정하고, 버튼 자체는 항상 보이면서 아래쪽 여백만 확보되도록 조정
2026-03-30 v1.2.24
- 내 티어표 상단 stat 제거:
내 티어표화면 헤더 오른쪽의 저장 개수 stat 카드를 제거해 제목/설명만 남도록 단순화 - 홈 게임 카드 메타 단순화: 게임 선택 카드에서 썸네일과 점형 메타를 제거하고, 한글 게임 제목과 아래 작은 ID만 보이는 형태로 정리
- 좌우 하단 액션 여백 보정: 왼쪽 로그인/관리자 버튼과 오른쪽 빠른 액션 버튼은 바닥에 바로 붙지 않도록 하단에 추가 여백을 확보
2026-03-30 v1.2.23
- 홈 게임 카드 4열 정리: 메인 게임 목록 화면도 카드형 레이아웃에서 데스크톱 기준 기본 4열로 보이도록 그리드를 조정
- 게임 허브 중복 생성 CTA 제거: 게임 선택 화면 본문 상단의
새로운 티어표 만들기버튼을 제거하고, 우측 사이드 하단 CTA만 유지하도록 정리 - 좌우 하단 액션 영역 분리: 왼쪽
관리자 메뉴/로그인과 오른쪽 빠른 액션 버튼을 각각 독립된 하단56px영역에 배치해, 본문/스크롤 영역과 분리된 고정 액션 위치로 통일
2026-03-30 v1.2.22
- 왼쪽 사이드 축소/확대 추가: 좌측 레일을 완전히 숨기지 않고 축소형 내비로 접었다 펼 수 있게 바꾸고, 접힌 상태에서는 아이콘 중심으로만 보이도록 레이아웃을 정리
- 좌우 패널 토글 아이콘 통일: 오른쪽 패널 열기/닫기는 모두
dock_to_left, 왼쪽 패널 토글은dock_to_right아이콘만 사용하도록 통일 - 전역 검색 아이콘 교체: 좌측 전역 검색 입력에 사용자가 추가한
search.svg를 실제 아이콘으로 연결
2026-03-30 v1.2.21
- 티어표 카드 문법 통일: 게임 허브, 검색 결과, 내 티어표, 즐겨찾기 목록의 카드 레이아웃을
상단 썸네일 / 제목+좋아요 / 작성자+최종 수정일2줄 메타 구조로 통일하고, 데스크톱 기준 한 줄 4개 카드가 보이도록 재배치 - 즐겨찾기 화면 날짜 기준 단순화:
내 즐겨찾기화면은 더 이상 즐겨찾기한 시각을 표시하지 않고, 정렬 기준과 무관하게 덱의 마지막 수정일만 카드에 노출하도록 정리 - 좌측 사용자 카드/즐겨찾기 밀도 보정: 좌측 사용자 아바타를 원형 보더 스타일로 통일하고,
Favorites바로가기 섹션은 메인 메뉴보다 덜 강조되도록 썸네일·텍스트·간격을 한 단계 축소
2026-03-30 v1.2.20
- 검색 결과 상단 툴바 제거:
/search화면의 중복 검색 폼을 제거하고, 좌측 전역 검색 입력만 검색 진입점으로 사용하도록 단순화 - 왼쪽 즐겨찾기 더보기 아이콘 교체: 사용자가 추가한
more.svg를 좌측즐겨찾기 더 보기링크 아이콘에 연결 - 중앙 본문 외곽 레이어 제거:
workspaceBody의 추가 패딩, 테두리, 둥근 카드 배경을 제거해 중앙 콘텐츠가 한 겹만 안쪽으로 들어온 것처럼 보이도록 셸 여백을 단순화 - 게임 허브 상단 통계 제거: 게임별 티어표 목록 화면의
dashboardStat카드를 제거해 상단 헤더를 CTA 중심으로 정리 - 우측 패널 토글 동작 정리: 중앙 헤더에는 패널이 닫혀 있을 때만 열기 아이콘 버튼을, 우측 헤더에는 패널이 열려 있을 때만 닫기 아이콘 버튼을 표시하도록 토글 흐름을 재구성
2026-03-30 v1.2.19
- 왼쪽 레일 설정 흐름 단순화: 사용자 카드 클릭 팝업을 제거하고, 설정은 좌측
Settings메뉴에서만 진입하도록 정리했으며 프로필 화면 하단에 로그아웃 버튼을 추가 - 좌측 즐겨찾기 바로가기 추가: 좌측
Favorites영역에 최근 즐겨찾기 티어표 최대 10개를 바로가기 형태로 표시하고, 하단즐겨찾기 더 보기링크로 전체 즐겨찾기 화면에 연결 - 전역 공개 티어표 검색 추가: 좌측 검색 입력은 이제 전체 공개 티어표를 대상으로 검색하며, 새
/search결과 화면에서 제목/작성자 기준 검색 결과를 카드 목록으로 표시 - 설정 아이콘 반영 및 중복 관리자 버튼 제거: 사용자가 추가한
settings.svg를 좌측Settings메뉴에 연결하고, 상단 내비에 중복되던 관리자 메뉴 항목은 제거
2026-03-30 v1.2.18
- 공통 56px 셸 헤더 도입: 좌측 사이드, 중앙 워크스페이스, 우측 사이드 상단에 각각 높이
56px의 고정 헤더 블록을 두고, 사이트 타이틀Tier Maker by zenn은 중앙 상단 헤더에만 표시되도록 셸 구조를 재정리 - 에디터 메인 래퍼 단순화: 티어표 편집 화면의
.layout2열 그리드를 제거해 공통 3단 셸 바깥에 중복 컬럼이 생기지 않도록 정리 - 아이템 라벨 overflow 수정: 편집 화면 우측 아이템 풀에서 긴 아이템 이름이 화면 밖으로 밀려나지 않도록
minmax(0, 1fr)와 말줄임 처리 기준을 추가
2026-03-30 v1.2.17
- 에디터 우측 패널 래퍼 제거: 티어표 편집 화면의
editorSidebar외곽 래퍼를 제거하고, 공통 오른쪽 레일 루트에 편집 섹션들이 직접 쌓이도록 구조를 단순화 - 공통 우측 레일 정렬 통일:
App.vue의localRightRailRoot에 섹션 스택 정렬을 부여해, 에디터/관리자 같은 로컬 패널 화면도 공통 레일 안에서 같은 방식으로 콘텐츠가 배치되도록 정리
2026-03-30 v1.2.16
- 메인 오른쪽 사이드 단순화: 홈 화면 기준 오른쪽 컬럼의 컨텍스트/계정/점프 카드 3종을 제거하고, 시안에 맞춰 핵심 CTA 버튼만 남기는 구조로 단순화
- 홈 상단 중복 도구 제거: 중앙 바디 상단에 추가돼 있던
Visible Games,Account,즐겨찾기 보기,내 리스트 보기,커스텀 티어표 만들기도구 막대를 제거해, 왼쪽/오른쪽 사이드와 중복되는 이동 요소를 정리
2026-03-30 v1.2.15
- 3단 셸 구조 고정: 홈 화면처럼
왼쪽 사이드 | 중앙 컨텐츠 | 오른쪽 사이드3단 레이아웃을 모든 일반 페이지의 공통 구조로 고정하고, 페이지 이동 시 오른쪽 컬럼이 사라졌다 나타나는 구조를 제거 - 에디터/관리자 우측 패널 공통 컬럼 통합: 티어표 편집과 관리자 화면의 로컬 우측 패널을 Teleport로 공통 오른쪽 컬럼에 배치해, 바디 내부 2단 레이아웃 대신 셸의 세 번째 컬럼을 공유하도록 재정리
2026-03-30 v1.2.14
- 에디터 우측 패널 셸 컬럼 이관: 티어표 편집 화면의
editorSidebar를workspaceBody내부 보조 칼럼이 아니라 공통 셸의 세 번째 컬럼으로 옮겨, 메인 화면과 같은왼쪽 사이드 | 메인 | 오른쪽 사이드구조를 사용하도록 재배치 - 공통 토글과 실제 aside 연결: 상단 패널 토글 버튼은 이제 Teleport로 이동한 에디터 우측 aside를 직접 접고 펴며, 본문 내부 2단 레이아웃처럼 보이던 구조를 제거
2026-03-30 v1.2.13
- 에디터 우측 패널 회귀 수정: 공통 패널 상태를 템플릿에서 잘못 참조해
editorSidebar가 항상 닫힌 상태로 계산되던 문제를 수정해, 제목/설명/썸네일/저장 패널이 다시 정상 표시되도록 복구
2026-03-30 v1.2.12
- 에디터 우측 패널 토글 연결: 공통 상단의 패널 토글 버튼이 이제 티어표 편집 화면의
editorSidebar에도 직접 연결되어, 숨기면 우측 패널이 접히고 중앙 보드 영역이 넓어지도록 수정 - 로컬 우측 패널 컬럼 충돌 방지: 에디터/관리자처럼 로컬 우측 패널을 쓰는 화면에서는 공통
rightClosed셸 컬럼 계산이 다시 끼어들지 않도록 예외 처리를 추가해 레이아웃이 다시 틀어지지 않게 보정
2026-03-30 v1.2.11
- 에디터 로컬 우측 패널 분리 보정: 에디터/관리자처럼 로컬 우측 패널을 쓰는 화면은 공통
workspaceBody카드 컨테이너를 벗기고, 로컬 패널이 중앙 본문 안쪽이 아니라 독립 컬럼처럼 보이도록 셸 구조를 조정 - 에디터 우측 컬럼 간격 보정: 티어표 편집 화면의
editorSidebar가 본문 내부 보조 박스처럼 눌리지 않도록 간격과 최소 폭을 정리해 우측 사이드바 역할이 더 분명하게 보이도록 수정
2026-03-30 v1.2.10
- 목록 화면 상단 툴바 밀도 통일: 홈, 게임 허브, 내 티어표, 즐겨찾기 상단 영역의 통계 카드와 액션 버튼 높이/반경/배경을 맞춰 공통 셸과 같은 도구 막대 문법으로 정리
- 홈 빠른 진입 흐름 보정: 홈 화면 툴바에서 중복되던 버튼 흐름을
즐겨찾기 / 내 리스트 / 커스텀 티어표 만들기중심으로 재구성해 실제 사용 동선에 맞게 정리 - 목록 카드 인터랙션 보강: 주요 카드 목록에 일관된 hover 이동과 배경 전환을 넣어, 대시보드 카드가 더 또렷하게 반응하도록 조정
2026-03-30 v1.2.9
- 관리자 대시보드 헤더 보강: 관리자 화면 상단에 현재 탭 기준 요약 통계 카드를 추가해, 게임/아이템/티어표/회원 상태를 즉시 읽을 수 있게 정리
- 운영 패널 질감 정리: 우측
320px운영 패널의 탭, 입력, 통계 카드, 버튼 라운드/배경/호버 상태를 공통 셸 톤에 맞춰 더 두꺼운 대시보드 카드 문법으로 통일 - 관리 카드 밀도 개선: 게임 상세, 커스텀 아이템, 템플릿 요청, 전체 티어표, 회원 카드의 배경층·패딩·반경을 함께 다듬어 시안에 가까운 평평한 관리용 레이아웃으로 보정
2026-03-30 v1.2.8
- 실제 SVG 아이콘 연결 시작: 사용자가 추가한
grid_view,lists,dock_to_left,dock_to_right아이콘을 공통 셸 내비와 우측 패널 토글에 연결해 문자 기반 아이콘을 일부 실제 에셋으로 교체 - 에디터 3열 구조 복구: 티어표 편집 화면을
보드 / 아이템 풀 / 우측 편집 사이드바구조로 재배치해, 아이템 풀은 보드 옆에서 바로 드래그 가능하고 편집 옵션은 최우측 패널에만 남도록 수정 - 커스텀 아이템 이름 정리 위치 조정: 커스텀 아이템 이름 수정 목록은 드래그용 아이템 풀 아래가 아니라 우측 편집 사이드바 안으로 옮겨, 보드 배치 흐름과 옵션 정리 흐름을 분리
2026-03-30 v1.2.7
- 공통 셸 아이콘형 정리: 좌측 내비와 우측 보조 패널의 임시 문자 배지를 간단한 SVG 아이콘형으로 바꾸고, 버튼/카드 라운드와 밀도를 통일
- 좌측 레일 정보 밀도 개선: 사용자 카드, 빠른 검색, 내비 버튼, 하단 로그인/관리자 버튼을 더 두꺼운 카드 문법으로 맞춰 피그마 톤에 가까운 레일 형태로 재정리
- 에디터 패널 감도 보정: 티어표 편집 화면의 보드, 보드 툴바, 우측 편집 패널, 아이템 풀/드롭존 카드의 배경·경계·라운드를 함께 정리해 공통 셸과 시각 언어를 맞춤
2026-03-30 v1.2.6
- 목록형 화면 카드 문법 통일: 홈, 게임 허브, 내 티어표, 즐겨찾기 화면의 카드형 목록을 동일한 썸네일/제목/작성자/메타 구조로 정리해 대시보드 톤을 맞춤
- 홈 화면 대시보드 재정렬: 메인 게임 라이브러리 화면에 상단 상태 카드와 CTA를 추가하고, 게임 카드는
16:9썸네일 + ID 메타를 갖는 라이브러리 카드 형태로 재배치 - 게임 허브 헤더/검색 정리: 게임 허브는 상단 통계와 생성 버튼, 보조 설명을 포함한 헤더로 재구성하고, 공개 티어표 카드도 같은 카드 밀도로 재정리
2026-03-30 v1.2.5
- 관리자 로컬 우측 패널 이관: 관리자 화면도 공통 우측 패널 대신 화면 내부의
320px전용 운영 패널을 사용하도록 정리하고, 탭·검색·필터·빠른 액션을 우측으로 이동 - 관리 화면 본문 집중도 개선: 중앙 영역은 상단 고정 게임 순서, 선택된 게임 상세, 커스텀 아이템 카드, 템플릿 요청/전체 티어표, 회원 카드 같은 실제 관리 대상만 남기고 빈 상태 안내도 별도 패널로 정리
- 관리자 셸 예외 확장: 공통 앱 셸에서
/admin도 전용 로컬 우측 패널을 사용하는 포커스 화면으로 분류해 generic 우측 문맥 카드가 중복 표시되지 않게 조정
2026-03-30 v1.2.4
- 비로그인 중복 안내 제거: 좌측 사이드 상단의 별도 로그인 안내 카드를 제거하고, 비로그인 상태에서는 좌측 하단 버튼만
로그인진입점으로 사용하도록 단순화 - 에디터 우측 편집 패널 이관: 티어표 편집 화면의 제목, 설명, 대표 썸네일, 공개 여부, 저장/삭제/요청 액션을 중앙 상단이 아니라 독립 우측 편집 패널로 이동
- 공통 우측 패널 예외 처리: 티어표 편집 화면은 공통 우측 패널 대신 화면 내부 전용 편집 패널을 사용하도록 조정해, generic 안내 카드가 중복 표시되지 않게 정리
2026-03-30 v1.2.2
- 사이드 패널 폭 고정: 공통 앱 셸의 좌측 패널 폭을
248px, 우측 패널 폭을320px기준으로 재정의해 피그마 시안과 더 가깝게 맞춤 - 우측 패널 토글 추가: 상단 우측 토글 버튼으로 우측 패널을 접고 펼칠 수 있게 하고, 접힐 때는 중앙 작업 영역이 자연스럽게 확장되도록 전환 애니메이션을 추가
- 우측 패널 독립성 강화: 우측 패널은 본문과 별도 컬럼으로 유지하고, 닫힐 때도 본문 레이아웃과 분리된 독립 패널처럼 동작하도록 셸 구조를 조정
2026-03-30 v1.2.1
- 포커스 화면 폭 복구: 에디터·관리자·프로필·로그인 화면은 공통 우측 패널을 잠시 숨기고 중앙 작업 폭을 넓혀, 기존 기능 UI가 3단 셸과 충돌하며 깨지던 문제를 완화
- 목록 카드 밀도 재조정: 홈, 게임 허브, 내 티어표, 즐겨찾기 화면의 기본 컬럼 수를 줄여 현재 셸 폭 안에서도 카드가 과도하게 눌리지 않도록 정리
- 에디터/관리자 패널 안정화: 내부 작업 패널 색상과 폭을 새 셸 톤에 맞춰 다시 정리해, 중첩 패널 때문에 사용성이 무너지던 부분을 우선 복구
2026-03-30 v1.2.0
- 피그마 기반 공통 앱 셸 1차 적용: 상단 헤더 중심 구조를
좌측 내비게이션 / 중앙 워크스페이스 / 우측 컨텍스트 패널3단 앱 셸로 재구성하고, 데스크톱 기준의 어두운 대시보드형 톤으로 전환 - 홈/목록 화면 카드 UI 리디자인: 홈, 게임 허브, 내 티어표, 즐겨찾기 화면의 카드 그리드와 툴바를 시안에 맞춰 더 조밀한 대시보드 형태로 재배치
- 전역 스타일 리셋 정리: 기존 Vite 기본 스타일 흔적을 제거하고, 서비스 전용 다크 테마와 입력/셀렉트/버튼 기본값을 새 레이아웃 기준으로 통일
2026-03-27 v0.1.52
- 관리자 완성본 프리뷰 전용화: 관리자 모달의 완성본 확인은 이제 전용 preview 모드로 열려 전역 헤더와 편집/탐색 UI 없이 보드만 깔끔하게 확인할 수 있도록 정리
- 티어표 기본 썸네일 자동 생성: 사용자가 별도 썸네일을 지정하지 않아도 저장 시 티어표에 포함된 아이템 중 대표 이미지를 골라 기본 썸네일을 자동으로 채우도록 보강
- 이력 문서 날짜순 재정리:
docs/history.md를 날짜 역순 기준으로 다시 정렬해 오래된 2026-03-19 항목이 중간에 끼어 보이던 흐름을 바로잡음
2026-03-27 v0.1.51
- 관리자 티어표 미리보기 모달 추가: 템플릿 요청 관리와 전체 티어표 관리에서
원본 보기 / 완성본 보기를 눌러도 관리자 화면을 벗어나지 않도록, 확인용 미리보기를 모달 iframe으로 열도록 변경 - 템플릿 등록 요청 조건 단순화: freeform 템플릿 등록 요청은 더 이상
보드 비움을 요구하지 않고,제목 직접 입력 + 커스텀 아이템 존재조건 중심으로 단순화 - 등록 요청 안내 문구 조정: 요청 모달 안내를 “게임 이름을 구체적으로 적어 달라”는 방향으로 정리해, 관리자 식별성을 높이는 쪽으로 보강
2026-03-27 v0.1.50
- 신규 티어표 등록 요청 타이밍 수정: 막 저장한 티어표에서 곧바로 템플릿 등록 요청을 보낼 때도
new가 아닌 실제 저장된 티어표 ID로 이어서 요청하도록 수정해, 신규 작성 직후 요청 실패 문제를 해결
2026-03-27 v0.1.49
- 템플릿 등록 요청 모달 레이아웃 보정: 체크리스트 문구 줄바꿈과 버튼 겹침 문제를 수정하고, 설명은 좌측·상태 배지는 우측에 배치되도록 요청 모달 레이아웃을 다시 정리
- 관리자 티어표 화면 분리:
티어표 관리탭 안에서템플릿 요청 관리 / 전체 티어표 관리를 서브 탭으로 분리해, 요청 목록과 저장된 전체 티어표 목록이 섞여 보이지 않도록 개선 - 관리자 안내 문구 보강: 전체 티어표 목록은 요청과 별개로 저장된 티어표 전체를 보는 영역이라는 설명을 추가해 혼선을 줄이도록 보강
2026-03-27 v0.1.48
- 템플릿 등록 요청 체크리스트 모달 추가: freeform 템플릿 등록 요청 전
제목 직접 입력 여부,보드 비움 상태를 확인하는 모달과 안내 문구를 추가하고, 조건이 맞을 때만 요청 버튼이 활성화되도록 조정 - 등록 요청 실패 원인 구체화: 템플릿 등록 요청 실패 시 제목 미입력, 보드 비우지 않음, 커스텀 아이템 없음, 중복 대기 요청 같은 주요 원인을 토스트로 구체적으로 안내하도록 보강
- 관리자 요청 목록 정리 문구 추가: 관리자 템플릿 요청 탭에서 반려 시 대기 목록에서 바로 제외된다는 안내와
반려 후 숨김버튼 문구를 추가해 운영 관점의 흐름을 더 명확히 정리
2026-03-27 v0.1.47
- 템플릿 등록/업데이트 요청 추가: 사용자가 저장된 티어표를 기준으로 관리자에게
새 템플릿 등록또는기존 템플릿 업데이트요청을 보낼 수 있도록 요청 API와 관리자 승인 흐름을 추가 - 커스텀 아이템 이름 편집 확장: 티어표 편집 화면에서 사용자가 직접 추가한 커스텀 아이템 이름을 정리할 수 있는 전용 입력 목록을 추가하고, 저장 시 MariaDB의 커스텀 아이템 라벨도 함께 동기화
- 관리자 요청 목록 추가: 관리자 티어표 관리 탭 상단에 처리 대기 중인 템플릿 요청 목록을 추가하고, 새 게임 템플릿 생성 승인과 기존 게임 템플릿 업데이트 승인을 바로 처리할 수 있게 개선
2026-03-27 v0.1.46
- 티어 행 아이템 제거 추가: 티어표 편집 화면에서 이미 등급 행에 넣은 아이템도 작은 제거 버튼으로 다시 아이템 풀로 빼낼 수 있도록 보강
- 회원 관리 보조 정보 확장: 관리자 회원 관리 카드에 아바타, 작성 티어표 수, 최근 활동 시각을 함께 표시해 운영 판단에 필요한 정보를 바로 확인할 수 있도록 개선
2026-03-27 v0.1.45
- 즐겨찾기 카드 액션 보정: 카드형 목록에서는 별표를 클릭 액션이 아닌 상태/개수 표시로만 보여주고, 실제 즐겨찾기 토글은 상세 화면에서 처리하도록 조정
- 토스트 중복/페이드아웃 개선: 같은 메시지 토스트는 하나로 합치고 카운트를 올리도록 변경했으며, 사라질 때는 짧은 페이드아웃 애니메이션을 적용
2026-03-27 v0.1.44
- 토스트 렌더링 버그 수정: 전역 토스트가 빈 카드 여러 개로 보이던 ref 참조 문제를 수정해 실제 메시지만 표시되도록 정리
- 공개 티어표 검색 추가: 게임별 공개 티어표 목록에서 제목/작성자 기준 검색이 가능하도록 검색창과 API 쿼리 지원 추가
- 내 즐겨찾기 페이지 추가: 사용자별 즐겨찾기 목록 화면과
즐겨찾기한 순 / 최신 업데이트순 / 인기순정렬 옵션을 추가
2026-03-27 v0.1.43
- 전역 토스트 알림 추가: 저장/삭제/가져오기 같은 사용자 행동 피드백을 상단 인라인 경고 대신 우측 상단 토스트로 통일해 잠시 표시 후 자동으로 사라지도록 변경
- 관리자 티어표 아이템 가져오기 모달화: 티어표 관리의 추가 아이템 영역을 소형 그리드로 다듬고, 가져오기 시점에
기존 템플릿에 추가 / 새 템플릿 만들기를 선택하는 모달 흐름으로 재정리 - 티어표 즐겨찾기 추가: 공개 티어표 목록과 상세 화면에서 즐겨찾기 토글과 개수를 표시하고, MariaDB에 사용자별 즐겨찾기 이력을 저장하도록 확장
2026-03-26 v0.1.42
- 관리자 티어표 관리 탭 추가: 공개/비공개를 포함한 최근 티어표 전체를 관리자 화면에서 검색/페이지네이션으로 확인하고, 제목·작성자·게임·공개 여부를 함께 볼 수 있도록 보강
- 추가 아이템 승격 흐름 확장: 티어표 안에서 사용자가 추가한 커스텀 아이템을 관리자 화면에서 바로 특정 게임의 기본 템플릿으로 개별 또는 일괄 복제할 수 있도록 추가
- 커스텀 티어표 템플릿화 추가:
freeform티어표는 관리자 화면에서 새 게임 ID/이름을 입력해 별도 게임 템플릿으로 복제 생성할 수 있도록 지원 - 관리자 열람 권한 확장: 비공개 티어표도 관리자는 편집 화면에서 완성본을 열람할 수 있도록 상세 조회 권한을 확장
2026-03-26 v0.1.41
- 커스텀 아이템 승격 연결 수정: 관리자 아이템 관리의
기본 템플릿에 추가버튼이 실제 API와 백엔드 승격 라우트로 연결되도록 누락된 프런트/백엔드 구현을 보완
2026-03-26 v0.1.40
- 기본 아이템 저장 UX 보강: 관리자 게임 관리에서 아이템 이름이 실제로 바뀐 경우에만
이름 저장버튼이 활성화되도록 조정하고, 저장 중 상태를 버튼에 표시 - 커스텀 아이템 승격 추가: 관리자 아이템 관리에서 사용자 커스텀 이미지를 선택한 게임의 기본 템플릿으로 복제해 가져올 수 있도록 API와 UI를 추가
2026-03-26 v0.1.39
- 에디터 헤더 재구성: 티어표 편집 상단에서 게임명 kicker를 제거하고, 좌측 제목/설명 입력과 우측 썸네일 카드가 나란히 보이는 구조로 재정리
- 썸네일 영역 UX 개선: 썸네일 미리보기와 선택/제거 버튼을 하나의 카드 안에 묶고, 모바일에서도 버튼이 카드 아래로 무너지지 않도록 밀도 있게 조정
2026-03-26 v0.1.38
- 관리자 기본 아이템 이름 수정 추가: 게임 관리 화면의 현재 기본 아이템 목록에서 이름을 직접 수정하고 저장할 수 있도록 API와 UI를 보강
- 티어표 썸네일 추가: 티어표 편집 화면에서 별도 썸네일 이미지를 선택해 저장할 수 있도록 업로드 흐름을 추가하고, 게임별 공개 티어표/내 티어표 목록은 게임 카드처럼 상단 썸네일 + 하단 제목/작성자 정보 카드 구조로 변경
2026-03-26 v0.1.37
- 운영 포트 설정 반영: 프로덕션 컴포즈의
frontend/phpMyAdmin외부 포트를18080/18081기준으로 유지하고, NAS 배포 문서와 기술 명세의 리버스 프록시 포트 안내도 동일하게 정리 - 인증 라우트 정리: NAS 로그인 문제를 확인하기 위해 넣었던
auth디버그 로그를 제거하고, 실제 운영에 필요한 세션 저장 보강만 유지 - 이력 문서 정렬:
docs/history.md를 날짜/버전 흐름에 맞게 다시 정리해 추적성을 높임
2026-03-26 v0.1.36
- 브라우저 탭 이름 변경: 프런트 문서 제목을
frontend에서Tier Maker로 변경 - 무제목 티어표 기본값 조정: 사용자가 제목을 입력하지 않으면
이름 없음 + 날짜대신 현재 게임명을 기본 제목으로 사용하도록 변경하고, 관리자 임의 삭제 안내 문구는 유지
2026-03-26 v0.1.35
- NAS Git 배포 절차 추가: UGREEN NAS에서 수동 복사 대신
git clone과git pull기반으로 운영 배포를 관리하는 절차를 배포 가이드에 정리 - v0.1.34 반영 명령 정리: 이미 수동 복사본이 있는 경우 새 clone으로 전환한 뒤 최신 이미지를 다시 빌드하는 순서를 문서화
2026-03-26 v0.1.34
- 파비콘 정적 요청 제거: 운영 환경에서
/favicon.svg가403으로 막히는 경우를 피하기 위해, 별도 파일 대신index.html인라인 데이터 URL 파비콘으로 전환 - 관리자 기본 아이템 다중 업로드 추가: 게임 관리 화면에서 기본 아이템을 여러 장 드래그 앤 드롭 또는 다중 파일 선택으로 한 번에 추가할 수 있도록 변경하고, 기본 라벨은 파일명 기준으로 자동 생성
2026-03-26 v0.1.33
- [NAS] 요청 프로토콜 디버그:
auth/login/auth/me에서req.secure,req.protocol,x-forwarded-proto값을 로그로 출력해 프록시/HTTPS 판단 문제를 확인
2026-03-26 v0.1.32
- [NAS] 인증 디버그 로그 추가:
auth/login에서req.session.save성공/실패와auth/me에서 세션 존재 여부를 콘솔 로그로 남겨 세션 쿠키 발급 문제를 빠르게 진단
2026-03-26 v0.1.31
- [NAS] 세션 쿠키 발급 강제: 백엔드 인증 라우트에서
req.session.save()를 명시 호출해 응답 전에 세션을 저장하고Set-Cookie가 확실히 내려오도록 보강
2026-03-26 v0.1.30
- [NAS] /api 상대경로 호출: 운영(
import.meta.env.PROD)에서는http://localhost:...같은 다른 origin으로 API를 호출하지 않도록,frontend/src/lib/runtime.js에서/api호출을 상대경로로 고정해 세션 쿠키가 정상 저장되도록 수정
2026-03-26 v0.1.29
- NAS 로그인 유지 수정: 프런트 Nginx가 백엔드에 전달하는
X-Forwarded-Proto를https로 고정하고 Express 세션의 프록시 인지를 명시해, NAS HTTPS 리버스 프록시 뒤에서도secure세션 쿠키가 정상 발급되도록 조정 - 운영 템플릿 복구: 실수로 빠질 수 있는
.env.production.example를 다시 포함하고, NAS 재배포 시 최신 프런트 이미지를 다시 빌드하도록 문서 보강
2026-03-26 v0.1.28
- MariaDB healthcheck 완화: UGREEN NAS 첫 초기화 시간이 길어도
unhealthy로 오판하지 않도록 프로덕션 컴포즈의 DB healthcheck를root기준과 더 긴start_period/retries로 조정 - NAS 장애 대응 문서화:
ready for connections이후에도unhealthy가 뜨는 경우의 재기동 절차를 배포 가이드에 추가
2026-03-26 v0.1.27
- UGREEN NAS 배포 파일 추가:
backend,frontend용 Dockerfile과 프런트 Nginx 프록시 설정, 프로덕션 전용docker-compose.prod.yml추가 - 운영 환경 예시 추가:
.env.production.example로 MariaDB/세션 시크릿 환경변수 템플릿 제공 - 배포 문서화:
tmaker.sori.studio기준 NAS 리버스 프록시, 컨테이너 실행, 볼륨 구성 가이드를 문서에 정리
2026-03-26 v0.1.26
- 아이콘 크기 조절 추가: 티어표 편집기에서
48 / 60 / 80 / 100 / 120단계로 아이콘 크기를 직접 바꿀 수 있도록 추가 - 기본 아이콘 크기 상향: 기본
.thumb크기를80px기준으로 조정하고, 보드와 우측 아이템 목록에 함께 반영되도록 정리
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.17
- 내 티어표 삭제 추가:
내 티어표목록에서 작성자가 자신의 티어표를 직접 삭제할 수 있도록 삭제 버튼과 API를 추가 - 미사용 커스텀 이미지 관리 추가: 관리자 아이템 탭에서 커스텀 이미지의 사용 횟수를 표시하고, 미사용 항목만 따로 필터링해 개별/일괄 삭제할 수 있도록 보강
2026-03-19 v0.1.16
- 티어표 헤더 마감 정리: 제목/설명 입력을 각각 한 줄 폭으로 정리하고, 액션 영역과 분리해 헤더 가독성을 개선
- export 정보 보강: 이미지 저장 시 제목 아래에 설명이 함께 표시되도록 보강
- 보드 여백/정렬 정리: 보드 내부 패딩을 늘리고, 티어 그룹 제목을 중앙 정렬로 조정해 완성본 느낌을 개선
2026-03-19 v0.1.15
- 셀렉트 화살표 여백 정리: 전역
select스타일에 커스텀 화살표 위치와 오른쪽 여백을 추가해 텍스트와 화살표가 지나치게 붙지 않도록 조정 - 티어표 다운로드 결과 개선:
TierEditorView의 이미지 저장을 Blob 다운로드 방식으로 바꾸고, 캡처 대상을 보드 영역만 포함하는 전용 export 뷰로 분리해 우측 아이템 영역과 편집용 버튼/입력 UI가 저장 이미지에 섞이지 않도록 수정
2026-03-19 v0.1.14
- 커스텀 아이템 카드 반응형 수정: 관리자 아이템 관리 탭의 커스텀 아이템 카드에서 이미지 폭을 유동값으로 조정하고, 텍스트 영역에
min-width: 0과 강제 줄바꿈 기준을 추가해 카드 바깥 overflow를 방지
2026-03-19 v0.1.13
- 관리자 탭 구조 정리: 관리자 페이지를
게임 관리 / 아이템 관리 / 회원 관리탭으로 분리하고 기능별 작업 영역을 명확히 분리 - 커스텀 아이템 조회 강화: 사용자 커스텀 아이템 목록에 파일명 검색,
50/200단위 페이지네이션, 다운로드 흐름 추가 - 회원 비밀번호 초기화 추가: 관리자 페이지와 API에서 회원 비밀번호를 직접 재설정할 수 있도록 기능 추가
- 가변 티어 행 지원: 티어표 에디터에서
S~D고정 5단이 아니라 티어 행을 직접 추가/삭제할 수 있도록 보강
2026-03-19 v0.1.12
- 전역 레이아웃 폭 정리: 앱 메인 영역의 고정 최대 너비를 제거해 배경과 페이지 폭이 잘린 듯 보이지 않도록 조정
- 작성 권한 제한: 비로그인 사용자는 새 티어표 작성 화면으로 직접 진입할 수 없도록 하고, 공개된 티어표는 읽기 전용으로만 보이게 조정
- 커스텀 이미지 업로드 개선: 에디터의 커스텀 이미지 추가 영역에 다중 파일 선택과 드래그 앤 드롭 업로드를 추가
- 회원 관리 추가: 관리자 페이지에서 가입 회원 목록 조회, 이메일/닉네임/권한 수정, 계정 삭제가 가능한 관리 영역과 API를 추가
2026-03-19 v0.1.11
- 관리자 레이아웃 재구성: 인라인 스타일을 제거하고, 썸네일 적용과 아이템 추가를 상단 2열 카드로 재배치한 뒤 아이템 목록은 하단 리스트로 분리
- 직접 티어표 만들기 추가: 홈 화면에 게임 카드와 동일한 형태의
직접 티어표 만들기진입점을 추가하고, 내부 전용freeform게임 레코드로 1회성 빈 티어표 저장 흐름을 지원 - 게임 제안 흐름 제거: 홈 화면의
새로운 게임 제안버튼/모달과 관련 프런트 API를 제거해 현재 운영 흐름에 맞게 단순화 - 커스텀 아이템 검토 영역 추가: 관리자 페이지에서 사용자 업로드 커스텀 아이템을 목록으로 보고 다운로드할 수 있는 검토 영역과 조회 API를 추가
2026-03-19 v0.1.10
- 관리자 썸네일 액션 정리: 썸네일 버튼 문구를
썸네일 적용으로 바꾸고, 파일 선택 전에는 비활성화되도록 조정 - 아이템 추가 폼 정리: 아이템 이름 입력 너비를 줄이고, 과한 미리보기 안내 문구를 제거해 작업 집중도를 높임
- 반응형 미리보기 보정: 태블릿 이하 화면에서도 아이템 1:1 미리보기가 최대
192px범위 안에서 보이도록 조정 - 파일 재선택 버그 수정: 아이템 추가나 게임 전환 뒤 파일 입력 값을 초기화해 같은 이미지를 다시 선택해도 정상 인식되도록 수정
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.8
- 관리자 업로드 UX 개선: 썸네일과 아이템 추가 시 파일 선택 직후 미리보기 표시
- 썸네일 비율 정리: 관리자 썸네일 미리보기와 대표 썸네일 표시를 16:9, 약 256px 폭 기준으로 조정
- 아이템 카드 레이아웃 개선: 아이템 목록과 추가 미리보기를 1:1 비율 기준으로 재구성하고 더 촘촘한 카드 그리드로 조정
- 레거시 파일 역할 정리:
db.json과 lowdb 관련 코드는 현재 MariaDB 기본 런타임에는 필수가 아니며, 마이그레이션/예외 fallback 용도임을 문서에 명시
2026-04-03 v1.4.65
- 파비콘 403 재발 차단: 운영 환경에서
/favicon.svg,/favicon-32x32.png정적 요청이 계속403 Forbidden으로 떨어지던 문제를 피하기 위해, 브라우저 탭 파비콘을 다시index.html인라인 SVG 데이터 URL로 전환하고 해당 정적 favicon 링크를 제거 - 광고 스크립트 외부 DNS 오류 분리:
e.dlx.addthis.com ... net::ERR_NAME_NOT_RESOLVED는 애드센스/광고 네트워크에서 발생한 외부 도메인 해석 실패 로그로, 서비스 파비콘/관리자 API 오류와는 별개 현상으로 분리
2026-04-03 v1.4.64
- 신규 DB 관리자 페이지 500 수정: 빈 DB를 새로 만든 직후
/admin/...진입 시GET /api/admin/template-requests와GET /api/admin/image-assets/stats가 500으로 터지던 문제를 수정 template_requests초기 스키마 보정: 새 테이블 생성 정의에 누락돼 있던groups_json,board_items_json,show_character_names_snapshot컬럼을 추가하고,source_tierlist_id는 요청 종류에 따라 비어 있을 수 있도록NULL허용으로 정리- 빈 DB 재현 검증: 로컬 MariaDB를
DROP DATABASE → CREATE DATABASE → ensureData()로 다시 초기화한 뒤listAdminTemplateRequests()가[],getImageAssetStats()가 0값 통계를 반환하는 것까지 직접 확인
2026-04-03 v1.4.63
- 우측 레일 Teleport 전환 안정화: 관리자/에디터 전용 우측 패널이 사용하는
#local-right-rail-rootDOM을 라우트에 따라 생성/삭제하지 않고 항상 유지하도록 바꿔,/admin/...에서 설정/다른 페이지로 이동하거나 새로고침 후 화면을 바꿀 때 Vue가nextSibling/emitsOptions기준점을 잃고 크래시하는 문제를 방지 - 정적 favicon 403 분리 확인: 프런트 빌드 기준
favicon.svg,favicon-32x32.png,apple-touch-icon.png파일은 레포와 Vitepublic/출력에 존재함을 확인했고, 운영 환경의 favicon403 Forbidden은 코드 누락보다 컨테이너/정적 서빙/프록시 권한 쪽 후속 점검 항목으로 분리
2026-03-19 v0.1.7
- AI 작업 규칙 보강:
ai-rules.md에 Git 작성자 정보, 한국어 커밋 메시지, 버전/태그 동기화, 민감 정보 확인 규칙 추가 - 관리자 화면 재구성:
/admin을 좌우 병렬 구조에서모드 선택 → 게임 선택/생성 → 선택된 게임 상세 관리흐름으로 재구성 - 관리자 삭제 기능 추가: 등록된 게임 자체 삭제 및 등록된 아이템 개별 삭제 기능 추가
- 데이터 정합성 보강: 관리자 아이템 삭제 시 관련 티어표의
groups/pool참조를 함께 정리하도록 백엔드 로직 보강
2026-03-19 v0.1.6
- 저장소 메타데이터 정리: Git 작성자 정보를 프로젝트 계정 기준으로 통일하고, 초기 릴리스 커밋 메시지를 한국어 기준으로 재작성
- 버전 관리 규칙 보강: 커밋 메시지 한국어 작성 및 문서 버전과 Git 태그를 함께 맞추는 규칙을 문서에 반영
2026-03-19 v0.1.5
- 로컬 개발 환경 정렬: 기본 백엔드 실행 기준을 lowdb가 아닌 로컬 MariaDB로 전환
- 개발용 인프라 추가: 루트
docker-compose.yml에MariaDB + phpMyAdmin추가 - 실행 문서 정리:
README.md,docs/local-mariadb.md,docs/spec.md에 로컬 MariaDB 실행 절차 반영 - Fallback 분리:
backend/package.json에dev:lowdb,start:lowdb예외 스크립트 추가
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.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-04-03 v1.4.37
- 썸네일 업로드 UX 보정: 티어표 편집기 우측
대표 썸네일프레임을 클릭/엔터/스페이스로 바로 파일 선택할 수 있게 바꾸고, 중복이던파일 업로드버튼은 제거
2026-04-03 v1.4.36
- 자기 티어표 복사 허용: 기존에는 타인의 저장본만 복사할 수 있었지만, 이제는 본인 티어표도 저장본이면 복사해서 일부만 수정한 새 버전으로 다시 작업할 수 있게 변경
- 프리뷰 우측 레일 추가: 공유 프리뷰 화면도 본 사이트 문법을 더 닮도록 우측에 300×600 광고 레일과 카피라이트를 붙이고, 모바일 폭에서는 자동으로 숨기도록 정리
2026-04-03 v1.4.35
- 에디터 아이템 검색 추가: 미배치 아이템이 많아졌을 때 바로 찾을 수 있도록 사이드바에
아이템 이름 검색입력과표시 개수 / 전체 개수를 추가 - 검색 중 드래그 유지: 아이템 풀 검색은 목록 순서를 바꾸지 않고 일치하지 않는 항목만 숨기는 방식으로 넣어, 검색 중에도 바로 드래그 배치할 수 있게 유지
- 공유 프리뷰 유입선 보강: 공유 링크 프리뷰 좌상단에
Tier Maker로고 링크를 추가해, 미리보기에서 메인 화면으로 자연스럽게 돌아올 수 있게 함 - 작성 시각 노출 축소: 프리뷰와 이미지 저장 하단 메타 정보의 시간 표시를 제거하고 날짜까지만 남겨 개인 생활 패턴 노출을 줄임
- 업로드 추적 로그 보강: 관리자 템플릿 기본 아이템 업로드는 프런트/백엔드 양쪽에서 파일 수·총 용량·응답 상태를 콘솔에 남기도록 해, 다중 업로드 실패 원인을 다음 재현 때 바로 좁힐 수 있게 보강
- 카피라이트 링크 변경: 우측 레일 하단 카피라이트의
zenn링크를https://x.com/zennbox로 변경
2026-04-02 v1.4.34
- 라이트모드 팔레트 재정비: 공통 라이트 테마 색상을 회색 위주에서 더 정돈된 청회색 계열로 다시 잡고, 셸/레일/메인/카드 표면 대비를 처음부터 재조정
- 공통 토큰 확장: 강조색 강도, 강조 배경, 오버레이 스크림, 아바타 테두리, 즐겨찾기 버튼 상태색을 공통 변수로 분리해 화면별 하드코딩을 줄임
- 홈 카드 보정: 주제 카드 즐겨찾기 버튼이 라이트모드에서 검은 플로팅 버튼처럼 뜨던 문제를 테마 변수 기반으로 수정
- 목록 카드 통일: 주제 허브/나의 티어표/즐겨찾기/검색 결과 카드의 아바타 테두리를 공통 토큰으로 맞춰 라이트모드에서 카드 밀도가 덜 어색하게 보이도록 정리
- 전역 셸 보정: 백엔드 점검 안내 버튼과 가이드 모달 오버레이도 라이트모드에 맞는 공통 색상 체계로 통일
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.1
- 티어표 메타데이터 개선: 제목 미입력 시 저장 시점에 게임 이름 기반 자동 제목 적용, 설명(선택) 필드 추가
- 시간 정보 표시: 내 티어표/공개 목록에서 저장 시간(createdAt)과 업데이트 시간(updatedAt)을 시:분:초까지 표시
- 에디터 UX 수정: 빈 티어 칸 안내 문구가 첫 드래그 배치를 가리던 문제 수정(오버레이 처리), 제목 상단에 게임 이름 표시
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/배치 레이아웃 개선