전국 대학생 대상 AI 기반 캠퍼스 통합 앱 (🚀 초기 MVP: 홍익대학교 서울캠퍼스 전용)
CampusYA는 대학생활의 모든 것을 하나의 앱으로 통합하는 AI 마스코트 기반 캠퍼스 플랫폼입니다. AI 챗봇, 커뮤니티, 학사 일정, 맛집, 족보, 공지 등 실시간 정보를 제공합니다.
campusya/
├── backend/ # Spring Boot 백엔드 서버
│ └── src/main/resources/application.yml
├── frontend/ # React Native (Expo) 프론트
│ └── app/
├── crawler/ # 크롤링 스크립트 (Python)
├── setup-scripts/ # 초기화 셸 스크립트 (DB 등)
├── docker/ # Docker 설정
├── .github/workflows/ # GitHub Actions CI/CD
└── README.md
| 모듈 | 기능 요약 |
|---|---|
| 🤖 AI 챗봇 와우 | GPT 기반 챗봇, 학사/족보/공지 연동, 요약/링크 응답 |
| 🗣 커뮤니티 | 익명 게시판, 댓글, 반응 기능, 욕설 필터링 |
| 🔒 사용자 시스템 | 대학 이메일 인증, 프로필 설정, 알림 설정 |
| 📋 게시판 | 자유, 공부자료, 맛집, 공모전 등 |
| ❤️ 족보 업로드 | 파일 저장 (S3), 글+PDF 업로드 |
| 📡 알림 | FCM 기반 푸시 알림 |
| 🛠 관리자 | 글/댓글 관리, 신고 누적, 정지 처리 등 |
| 분야 | 사용 기술 |
|---|---|
| 프론트엔드 | React Native (Expo), TypeScript, Zustand, NativeWind |
| 디자인 시스템 | Figma 기반, Tailwind 유사 설계 |
| 백엔드 | Spring Boot 3.2+, JPA, QueryDSL, JWT |
| 데이터베이스 | PostgreSQL + Redis, PGVector |
| AI 기능 | OpenAI API + LangChain |
| 크롤러 | Python + BeautifulSoup/Selenium |
| 배포 인프라 | Docker + EC2 + RDS + S3 + CloudFront |
| CI/CD | GitHub Actions + DockerHub |
| 모니터링 | Logback, Sentry, Prometheus, Grafana |
| 환경 | 설명 |
|---|---|
| 📦 개발 플랫폼 | GitHub Codespaces 사용 (설치 없는 클라우드 개발환경) |
| 🔐 CLI 전용 DB 클라이언트 | psql |
| 설치 파일 다운로드 불가 → Codespaces에 모든 환경 구축 |
.env또는application.yml에 사용
EXPO_PUBLIC_API_URL=http://localhost:8080
OPENAI_API_KEY=sk-xxxx
- System Prompt: 홍익대학교 마스코트 ‘와우’의 성격 반영
- 데이터 연결: 게시판/맛집/학사일정/족보/공지 DB
- 응답 유형: 카드, 요약, 링크, 문서 응답
- 세션 및 학습 기반: Redis + PostgreSQL 저장
전체 ERD는
/docs/ERD.md참고
| 주요 테이블 | 설명 |
|---|---|
users |
사용자 정보 (학교, 학과, 권한 등) |
posts |
게시글 정보 (익명 포함) |
comments |
트리형 댓글 |
chat_logs |
AI 챗봇 대화 로그 |
boards |
게시판 정의 |
schools / departments |
캠퍼스 구조화 |
likes |
좋아요 기록 |
./gradlew testnpm test| 구성요소 | 기술 |
|---|---|
| 백엔드 | Docker + EC2 |
| 프론트 정적 자산 | S3 + CloudFront |
| DB | RDS (PostgreSQL) |
| AI 모델 | OpenAI API |
| 도메인/SSL | Route 53 + ACM |
| CI/CD | GitHub Actions → DockerHub 자동 빌드 |
develop브랜치 기반으로 기능 브랜치 생성- PR 시, 관련 이슈 번호 & 테스트 코드 포함
- 커밋 메시지 Convention 유지
MIT License © 2025 CampusYA Team