Skip to content
@cheongyakplanet

청약플래닛

부동산 종합 정보 플랫폼

청약플래닛 (CheonYakPlanet) 🏠

  청약플래닛은 공공 분양 정보를 쉽게 찾고 관리할 수 있는 플랫폼입니다.
사용자가 관심 지역의 청약 정보를 효율적으로 추적하고, 주변 인프라와 금융 정보를 함께 제공하여 더 나은 주거 선택을 돕습니다.

부동산 정보 플랫폼 으로 성장하여, 사람들이 부동산 정보에 스마트하게 접근할 수 있도록 지원하겠다는 비전을 갖고 있습니다.

🚀 주요 기능

📍 청약 정보 서비스

  • 실시간 청약 정보: 공공데이터 기반 최신 분양 정보 제공
  • 지역별 검색: 시/도, 구/군 단위 세부 검색 기능
  • 관심 지역 설정: 최대 5개 지역 관심 등록 및 알림
  • 상세 정보: 분양가, 공급 일정, 특별공급 대상 등 종합 정보

🗺️ 위치 기반 인프라 정보

  • 주변 인프라 조회: 반경 1km 내 지하철역, 학교, 공공시설 정보
  • 거리 계산: 하버사인 공식 기반 정확한 거리 측정
  • 지도 연동: 카카오맵 API를 통한 시각적 위치 정보

👥 커뮤니티

  • 게시판: 청약 관련 정보 공유 및 토론
  • 댓글/답글: 계층형 댓글 시스템
  • 좋아요/싫어요: 게시글 평가 시스템

🤖 AI 채팅 어시스턴트

  • Gemini 2.0 Flash 연동: 청약 관련 실시간 상담
  • 일일 사용 제한: 사용자당 15회 메시지 제한
  • WebSocket 기반: 실시간 채팅 환경

🏗️ 시스템 아키텍처

시스템아키텍처 drawio

기술 스택

Category Subcategory Technology Version
Frontend Core Framework Next.js 15.1.6
React 18.3.1
State Management Zustand (Client) 5.0.3
React Query (Server) 5.65.1
UI/UX Radix UI -
Tailwind CSS 3.4.1
Lucide React 0.474.0
Form Handling React Hook Form 7.54.2
Zod Validation 3.24.1
API Communication Axios 1.7.9
Development Tools TypeScript 5
ESLint 8.57.1
Prettier -
Backend Core Platform Spring Boot 3.2.0
Java 17
Security Spring Security -
JWT (JJWT) 0.11.5
OAuth2 Client -
Data Access Spring Data JPA -
Spring Data JDBC -
Spring Validation -
API Documentation Swagger/OpenAPI 2.1.0
Utility Lombok -
Logback -
Infrastructure Hosting GitHub Pages (FE) -
AWS EC2 (BE) -
Database AWS RDS -
MySQL -
Network AWS Load Balancer -
AWS Certificate Manager -
Security SSL/TLS -
VPC -
Development Version Control Git/GitHub -
CI/CD GitHub Actions -
Monitoring Spring Actuator (예정)

📁 프로젝트 구조

cheonyakplanet/
├── frontend/                 # Next.js 프론트엔드
│   ├── src/
│   │   ├── app/             # App Router 페이지
│   │   ├── components/      # UI 컴포넌트
│   │   ├── services/        # API 서비스 계층
│   │   ├── stores/          # Zustand 상태 관리
│   │   └── lib/             # 유틸리티 함수
│   └── package.json
├── backend/                  # Spring Boot 백엔드
│   ├── src/main/java/org/cheonyakplanet/be/
│   │   ├── application/     # 서비스 계층
│   │   ├── domain/          # 도메인 엔티티
│   │   ├── infrastructure/  # 외부 연동
│   │   └── presentation/    # 컨트롤러
│   └── build.gradle
└── docs/                    # 프로젝트 문서

🚀 시작하기

사전 요구사항

  • Node.js 18+ (Frontend)
  • Java 17+ (Backend)
  • MySQL 8.0+
  • Docker (선택사항)

로컬 개발 환경 설정

  1. 저장소 클론
git clone https://github.com/your-org/cheonyakplanet.git
cd cheonyakplanet
  1. 백엔드 실행
cd backend
./gradlew bootRun
  1. 프론트엔드 실행
cd frontend
npm install
npm run dev
  1. 브라우저에서 확인

환경 변수 설정

Backend (application.yml)

spring:
  datasource:
    url: jdbc:mysql://${DB_URL}
    username: ${DB_USERNAME}
    password: ${DB_PASSWORD}
jwt:
  secret:
    key: ${JWT_SECRET}

Frontend (.env.local)

NEXT_PUBLIC_API_URL=http://
NEXT_PUBLIC_KAKAO_MAP_KEY=

🧪 테스트

# Backend 테스트
cd backend
./gradlew test
./gradlew jacocoTestReport

# Frontend 테스트
cd frontend
npm run test
npm run test:coverage

📊 모니터링

  • Backend: Spring Boot Actuator + Prometheus
  • Frontend: Google Analytics + Naver Analytics
  • Coverage: JaCoCo (Backend), Jest (Frontend)

커밋 메시지 규칙

  • Feat: 새로운 기능
  • Fix: 버그 수정
  • Refactor: 코드 리팩토링
  • Test: 테스트 관련
  • Docs: 문서 변경
  • Build: 빌드 시스템 변경

팀원

정효진 정다예 김지수 김지우
FE : 메인, 마이페이지, 청약정보 BE : 마이페이지, 커뮤니티 BE : 로그인, 모니터링, 청약정보 FE : 로그인, 커뮤니티, 모니터링
FE & UI/UX BE BE & DBA FE

📝 라이선스

This project is licensed under the MIT License - see the LICENSE file for details.

📞 문의


청약플래닛으로 더 스마트한 청약 정보를 경험해보세요! 🏠✨

Popular repositories Loading

  1. BE BE Public

    Backend of cheongyakplanet

    HTML 1

  2. FE FE Public

    Frontend of cheongyakplanet

    TypeScript 1

  3. .github .github Public

    introduce

  4. python python Public

    추가 기능

    Jupyter Notebook

Repositories

Showing 4 of 4 repositories

Top languages

Loading…

Most used topics

Loading…