cardify.mp4
지능적인 플래시 카드 학습 Web 서비스
🔄 Fork Information
- Original Repository: UMC-CARDIFY/Server
- Forked by: 이정원
- Fork Purpose: 개인 포트폴리오 및 기능 개선
- Fork Date: 2025.09.02
- Backend: Java 17, Spring Boot 3.3.1
- Build Tool: Gradle 8.0
- Database: MySQL 8.0
- Authentication: Spring Security + JWT
- Documentation: Swagger/OpenAPI 3.0
- 🔐 사용자 인증 로직 - Spring Security를 통한 토큰 갱신 로직 최적화
- 💸 간편 정기 결제 기능 - Portone API 토큰 캐싱 처리 및 결제 실패시 지수백오프방식과 알림 도입
- 🔍 CI/CD - Jenkins를 활용한 무중단 배포
- 사용자 인증 토큰 갱신 오류로 인한 데이터 로드 에러 해결
- 프론트와의 통신을 위한 토큰 위치 및 인증 프로세스 개선
- Portone API 토큰 캐싱 기법 적용하여 API 호출률 17%로 최적화
- 결제 실패시 지수백오프 방식 도입을 통해 평균 성공 소요 시간 10분대로 최적화
- git wbehooks와 jenkins를 활용하여 무중단 배포
# 1. 저장소 클론
git clone https://github.com/leegaarden/cardify.git
cd cardify
# 2. MySQL 데이터베이스 설정
mysql -u root -p
CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 3. 환경설정 파일 복사 및 수정
cp src/main/resources/application.yml.example src/main/resources/application.yml
# application.yml에서 데이터베이스 정보 수정
# 4. 빌드 및 실행
./gradlew clean build
./gradlew bootRun✅ 실행 확인
우리 팀은 Git Flow 브랜치 전략을 사용하여 체계적으로 개발했습니다.
main (배포용)
├── develop (개발 메인)
│ ├── feature/login (사용자 인증)
│ ├── feature/discord (결제 실패 알림)
│ └── feature/kakaopay (카카오 정기 결제)
├── release/v1.0.0 (릴리즈 준비)
├── release/v1.1.0
└── hotfix/token-renewal (토큰 갱신 문제 긴급 해)
main: 배포 가능한 안정적인 코드develop: 다음 릴리즈를 위한 개발 브랜치feature/*: 새로운 기능 개발hotfix/*: 배포 후 긴급 버그 수정
develop에서feature/기능명브랜치 생성- 기능 개발 완료 후
develop으로 Pull Request - 코드 리뷰 후
develop에 merge - 테스트 완료 후
main과develop에 merge
POST /api/v1/auth/token
GET /api/v1/auth/refresh
GET /api/v1/auth/check-refresh-tokenPUT /api/v1/users/notification # 사용자 알림 설정 변경
PUT /api//v1/users/name # 사용자 이름 변경
POST /api/v1/users/logout # 사용자 로그아웃
GET /api/v1/users/mypage # 사용자 마이페이지 조회
GET /api/v1/users/check # 사용자 출석체크PUT /api/v1/payment-methods/{id}/default # 기본 결제 수단 변경- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
이정원
- GitHub: @leegaarden
- Email: [email protected]
- LinkedIn: Jeong Won Lee
- Blog: velog
- 원본 프로젝트: UMC-CARDIFY/Server
- 팀원들: @임수빈, @최선규, @최대한
⭐ 이 프로젝트가 도움이 되었다면 Star를 눌러주세요!
This README was crafted with ❤️ for my portfolio