학번: 2021125061
이름: 정성훈
Python 기반 개인 재무 관리 웹 애플리케이션입니다.
매일 발생하는 소소한 지출을 체계적으로 관리하고, 데이터 분석을 통해 소비 패턴을 파악할 수 있는 대시보드입니다.
- 지출 등록: 카테고리별 지출 기록 (빠른 등록 기능 포함)
- 지출 내역 조회: 필터링, 검색, 정렬 기능
- 시각화 대시보드: 일별 추이, 카테고리 비율, 요일별 패턴
- 분석 리포트: 월간 비교, 트렌드 분석, 월말 예측
- 예산 관리: 월별 예산 설정 및 사용률 모니터링
| 구분 | 기술 |
|---|---|
| 언어 | Python 3.10+ |
| 웹 프레임워크 | Streamlit |
| 데이터베이스 | SQLite |
| 데이터 분석 | pandas, numpy |
| 시각화 | Plotly |
| 설계 패턴 | Repository Pattern, Dataclass |
expense-tracker/
├── app.py # Streamlit 메인 애플리케이션
├── database.py # SQLite DB 관리 및 Repository 패턴
├── analytics.py # pandas 기반 데이터 분석 모듈
├── sample_data.py # 테스트용 샘플 데이터 생성
├── requirements.txt # 의존성 목록
├── expense_tracker.db # SQLite 데이터베이스 (실행 시 생성)
└── README.md
pip install -r requirements.txtpython sample_data.pystreamlit run app.py브라우저에서 http://localhost:8501로 접속합니다.
- 월간 지출 요약 (총 지출, 예산 대비, 일평균)
- 일별 지출 추이 그래프 (막대 + 누적 라인)
- 카테고리별 파이 차트
- 요일별 패턴 분석
- 월말 지출 예측
- 폼 기반 상세 등록
- 빠른 등록 버튼 (커피, 점심 등)
- 최근 6개월 비교 차트
- 카테고리별 수평 바 차트
- 레이더 차트 (요일별 패턴)
- 7일 이동평균 트렌드