9.6 KiB
9.6 KiB
변경 내역
2026-08-13
- Nuxt 3, Vue 3, TypeScript, Tailwind CSS 기반 프로젝트를 생성했다.
- Prisma, PostgreSQL, Docker Compose 기반 DB 구성을 추가했다.
- PWA manifest와 앱 아이콘을 추가했다.
- 로그인, 자산, 카테고리, 거래 CRUD API의 기본 골격을 추가했다.
- 모바일 하단 탭, 바텀 시트 선택 UI, 플로팅 추가 버튼을 적용했다.
- 거래 목록, 거래 추가, 거래 상세/수정, 통계, 자산, 설정 화면을 추가했다.
- 통계 화면은 월별 수입/지출 분류 집계 중심으로 정리했다.
- 자산 화면은 자산 목록과 자산별 월 거래 내역으로 분리했다.
- 설정 화면은 항목 목록에서 자산/카테고리 관리 상세로 들어가는 구조로 변경했다.
- PC 화면에서는 모바일 고정 폭을 제거하고 사이드바와 넓은 콘텐츠 영역을 사용하도록 전역 레이아웃을 수정했다.
- 카테고리 관리를 수입/지출별 상위 카테고리 목록과 하위 카테고리 상세 목록 구조로 변경했다.
- 카테고리 추가는 상시 노출 입력 폼 대신 헤더의
+버튼과 바텀 시트 입력으로 변경했다. - 카테고리 관리 화면에서 활성/비활성 토글 표시를 제거했다.
- 전역 UI 밀도를 낮추고 입력 필드 좌우 여백을 정리했다.
- 바텀 시트 선택 버튼에서 하단 화살표를 제거했다.
- 로그인 화면이 하단 탭 여백 때문에 스크롤되는 문제를 수정했다.
- 입력 중 스크롤이 튀는 현상을 줄이기 위해 바텀 시트 body overflow 변경과 추가 화면 sticky 저장 버튼을 제거했다.
- 거래 목록 행을 날짜 그룹, 카테고리 아이콘 자리, 기본 2줄 정보, 메모가 있을 때만 보이는 3번째 줄 구조로 변경했다.
- 메모 입력과 저장 길이를 최대 60자로 제한했다.
- 거래 입력/수정에서 시간 입력을 제거하고 날짜 바텀 시트 선택으로 변경했다.
- 금액 입력 기본값을 제거했다.
- 거래 목록의 카테고리 표시는 하위 카테고리명 중심으로 단순화했다.
- 내역 화면 상단을 헤더, 월 요약, 주간 날짜 스트립 구조로 개편했다.
- 방향 이동 버튼을
assets/icons의 SVG 화살표로 통일했다. - 내역 화면의 선택일 요약 박스를 제거하고 날짜별 수입/지출 금액을 주간 날짜 셀 안에 작게 표시했다.
- 월 지출 하단 설명을 수입/차액 대신 지난달 대비 지출 비교 문구로 단순화했다.
- 하단 네비게이션과 PC 사이드바에 SVG 메뉴 아이콘을 적용하고 활성 탭 색상을 명확하게 표시했다.
- SVG 메뉴 아이콘이 사각형으로 보이는 문제를 수정하고 활성 아이콘 배경을 추가했다.
- 내역 검색과 유형/자산/카테고리 필터 바텀 시트를 구현했다.
- 거래 목록 API에 검색어, 유형, 자산, 카테고리 필터 query를 추가했다.
- 월 선택 바텀 시트를 공통 컴포넌트로 분리하고 내역, 통계, 자산 화면에 적용했다.
- 거래 추가 화면을 거래 수정 화면과 같은 행 기반 입력 구조로 정리했다.
- 회원가입 API와 로그인 화면의 로그인/회원가입 전환 UI를 추가했다.
- 가입 시 기본 자산과 기본 수입/지출 카테고리가 생성되도록 했다.
- 읽기 전용 공유 링크 기능 계획을 TODO에 추가했다.
- 읽기 전용 공유 링크 DB 모델과 migration을 추가했다.
- 공유 링크 생성, 목록 조회, 삭제 API를 추가했다.
- 만료 기간이 있는 공개 읽기 전용 공유 화면을 추가했다.
- 설정 화면에 계정 관리, 로그아웃, 공유 링크 관리 화면을 추가했다.
- 카테고리에 아이콘과 색상 필드를 추가하고 Prisma migration을 추가했다.
- 카테고리 관리 화면에서 상위/하위 목록을 거쳐 카테고리 상세 정보를 수정할 수 있도록 했다.
- 거래 목록의 카테고리 아이콘 자리를 카테고리별 아이콘/색상 설정과 연결했다.
- 거래 입력/수정의 카테고리 선택을 실제 선택 가능한 최종 카테고리 중심으로 정리했다.
- README에 개발, 빌드, Prisma 관련 주요 명령과 현재 검증 기준을 정리했다.
- TODO에서 요구사항과 맞지 않던 이체 관련 작업 항목을 제거했다.
- 설정의 계정 관리 화면에서 이름 수정과 비밀번호 변경 기능을 구현했다.
- 내역 화면의 주간 날짜 스트립에 좌우 슬라이드 전환 애니메이션을 추가했다.
- 거래 입력/수정 화면의 자산, 분류, 금액, 내용 placeholder를 제거하고 메모/위치 영역을 같은 입력 리스트 안의 얇은 행으로 정리했다.
- 거래 입력/수정 화면의 상단 저장 버튼을 제거하고 하단 저장/취소 2:1 버튼 구조로 변경했다.
- 거래 입력/수정 화면에 필수값 누락 토스트와 해당 입력 줄 포커스/강조 피드백을 추가했다.
- 거래 입력/수정 행 스타일을 박스형 입력에서 밑줄형 입력으로 변경했다.
- 회원가입 중 기본 데이터 생성 실패 시 계정만 생성되는 문제를 막기 위해 가입 처리를 트랜잭션으로 묶었다.
- 로그인 시 기본 자산/카테고리가 비어 있는 기존 계정을 자동 보정하도록 했다.
- 설정의 자산 관리를
+추가, 목록, 상세 수정/삭제 흐름으로 변경하고 활성/비활성 토글을 제거했다. - 거래가 연결되지 않은 자산을 삭제할 수 있는 API를 추가했다.
- 카테고리/자산 조회 시 기본 데이터가 비어 있으면 자동 보강되도록 했다.
- 기본 카테고리 초기값을 상위 카테고리
기본 수입,기본 지출1개씩으로 단순화했다. - 카테고리/자산 추가 바텀 시트의 닫기 버튼을 제거하고 추가 실패 안내를 표시하도록 했다.
- 개발 환경에서만 노출되는 테스트 로그인 버튼과 개발용 로그인 API를 추가했다.
- 카테고리 상세 화면에 삭제 동작을 추가하고, 하위 카테고리나 거래가 연결된 카테고리는 삭제하지 못하도록 안내를 추가했다.
- 하단 네비게이션과 PC 사이드바 SVG 아이콘을 마스크 방식 대신 인라인 SVG 렌더링으로 변경해 네모 박스로 보이는 문제를 수정했다.
- 내역, 통계, 자산 화면의 월 이동 UI를 공통
MonthNavigator컴포넌트로 통일했다. - 통계와 자산 화면의 상단 헤더와 월 이동 영역을 분리해 페이지 간 날짜 조작 위치를 맞췄다.
- 거래 입력/수정 날짜 선택 바텀시트에
오늘,이번 달,선택일빠른 이동 버튼을 추가했다. - 거래 입력/수정에서 자산 선택 후 분류 선택 바텀시트로 자연스럽게 이어지도록 했다.
- 거래 입력/수정의 수입/지출 타입 변경 시 카테고리 선택을 초기화하고 저장/삭제/복사 실패 토스트를 추가했다.
- 거래 입력/수정의 금액 입력을 기본 숫자 input에서 숫자만 정리하는 텍스트 입력으로 바꾸고 천 단위 표시를 적용했다.
- 통계 화면의 카테고리 집계를 최종 카테고리 기준으로 바꾸고 목록 높이와 보조 정보를 더 촘촘하게 정리했다.
- 자산 화면을 넓은 화면에서 카드 그리드와 상세 2열 구조로 보이도록 조정했다.
- 거래 상세 화면의 자주사용 버튼을 실제 템플릿 저장 기능과 연결하고, 거래 추가 화면에서 자주사용 내역을 바텀시트로 불러올 수 있도록 했다.
- 거래 삭제 확인을 브라우저 기본 confirm 대신 앱 스타일의 바텀시트로 변경했다.
- 거래 목록 API가 월간 조회뿐 아니라 연간 조회도 받을 수 있도록 확장했다.
- 자산 상세 화면의 월 이동 위치를 헤더 아래 공통 구조로 맞추고, 일별/월별/연별 보기 전환과 전환 모션을 추가했다.
- 로컬 개발 DB에 누락되어 있던 공유 링크와 카테고리 표시 migration을 적용하고, 빈 이체 migration 디렉터리를 제거했다.
- 설정 홈을 계정, 가계부, 데이터 섹션으로 나누어 각 항목의 목적이 먼저 보이도록 정리했다.
- 플로팅 추가 버튼과 설정 화면 추가 버튼을 텍스트
+대신assets/icons/add.svg아이콘으로 교체했다. - 사용자 설정 테이블과 API를 추가하고, 설정 화면에서 주 화폐, 월 시작일, 주간 시작일을 저장할 수 있도록 했다.
- 월별 거래/자산 조회 범위가 사용자 설정의 월 시작일을 따르도록 연결했다.
- 내역 화면의 주간 날짜 스트립 요일 순서와 주 시작 계산이 사용자 설정의 주간 시작일을 따르도록 연결했다.
- 로그인 화면에서 PC 사이드바 여백이 적용되어 화면이 오른쪽으로 밀리는 문제를 수정했다.
- PC 중간 폭 화면에서 콘텐츠 오른쪽이 잘리지 않도록 전역 레이아웃을 margin 기반에서 padding 기반으로 변경했다.
- 내역 헤더의 검색과 필터 버튼을
assets/icons/search.svg,assets/icons/tune.svg인라인 SVG로 교체했다. - CSV 내보내기 컬럼을 한글 컬럼명과 앱의 거래 흐름에 맞는 순서로 정리하고 Excel 호환 BOM을 추가했다.
- 빈 데이터 상태 화면을 공통 컴포넌트로 분리하고 내역, 통계, 자산, 설정, 공유 화면에 적용했다.
- 로그인 화면에 세션 만료/로그인 필요 안내를 추가하고, 로그인 후 원래 접근하려던 화면으로 돌아가도록 했다.
- 로그인/회원가입 입력값을 요청 전에 먼저 검증하고 네트워크 오류 메시지를 더 명확하게 표시하도록 했다.