프로그래머스 백엔드 데브코스 4기 5회차 9팀 시고르백구의 2차 팀 프로젝트입니다.
| Name | GitHub | Role |
|---|---|---|
| 이화영 | 2hwayoung | 팀장 |
| 김하연 | xaxeon | 팀원 |
| 이승민 | min429 | 팀원 |
| 장무영 | wkdan | 팀원 |
💡 실시간 코인 데이터 분석 및 북마크 대시보드 서비스
-
업비트 OpenAPI와 WebSocket을 활용해 코인 관련 중요 지표(현재가, 체결자, 호가, 캔들 차트)를 실시간으로 안정적으로 제공
-
사용자가 관심 있는 코인을 북마크하여 개인화된 대시보드를 구성할 수 있는 사이트 개발
-
기존의 단순 정보 제공 서비스와 달리, 다양한 기술적 지표(Spread, Imbalance, Liquidity Depth 등)를 통해 보다 전문적인 분석 도구 제공
- 일반 회원 기능:
- 회원가입
- 로그인
- 로그아웃
- 코인 대시보드:
- 목록 조회 (필터링/정렬: 인기순, 시가순, 변동폭, 거래량 등)
- 시세 캔들 차트 조회 (초/분/일/주/월/년 단위)
- 종목/마켓 단위 현재가, 체결가 및 호가 정보 조회
- 북마크 대시보드:
- 북마크 등록/삭제
- 북마크한 코인 목록 조회 (필터링/정렬: 인기순, 시가순, 변동폭, 거래량 등)
- 종목/마켓 단위 현재가, 체결가 및 호가 정보 조회
- 추가 기능 (향후 확장)
- 소셜 회원가입/로그인
- 코인 항목 별 관련 뉴스 실시간 집계
Run Database (Docker Compose)
# Start MySQL container with Docker Compose
# in root directory
docker-compose up -d
# Monitoring Logs
# Since logs are mapped to your local machine in ./mysql/conf, you can monitor them directly:
tail -f ./mysql_logs/general.log
# Stop Containers
docker-compose down
Run Frontend (Next.js)
# Navigate to frontend project directory
cd frontend
# Start Next.js development server
npm install # Install dependencies (only needed once)
npm run dev # Start development server
# Use OpenAPI to generate TypeScript types for the backend API
npm run codegen # Generate openapi typeScript definitions
npm run codegen:watch # Watch for API changes and regenerate types automatically
애플리케이션에서 데이터베이스 설정을 환경별 파일로 분리하여, 각 환경에 맞는 DB 연결 정보, JPA ddl-auto, 로깅 레벨 등을 세팅했습니다.
- prod: 운영환경 – MySQL 사용
- dev: 개발환경 – Docker Compose를 통해 MySQL 사용
- test: 테스트 환경 – In-memory H2 Database 사용
또한, 운영 환경에서는 향후 데이터베이스 스키마 마이그레이션을 위해 Flyway를 도입할 예정입니다. (현재는 JPA의 ddl-auto: update를 사용하며 Flyway는 비활성화 상태입니다.)
- Upbit API: 실시간 WebSocket 및 REST API 연동
- Naver Search API: 코인 관련 실시간 뉴스 데이터 제공
- Kakao Login API: 소셜 로그인 기능 제공