ScholarAI는 장학금 정보 탐색의 복잡함을 덜고,
개인 맞춤형 추천을 통해 사용자가 가장 알맞은 장학금을
쉽고 빠르게 찾을 수 있도록 도와주는 모바일 애플리케이션입니다.
| 이름 | 역할 | 담당 업무 |
|---|---|---|
| 🧭 황윤하 | 팀장 / Frontend | Flutter 기반 UI/UX 개발 및 앱 구조 설계 |
| 🗄️ 고희연 | Backend | Spring Boot 기반 API 설계 및 DB 관리 |
| 🤖 곽나현 | AI | 장학금 추천 알고리즘 및 챗봇 개발 |
장학금 통합 검색 기능을 통해 장학금 상세 정보를 조회할 수 있습니다.
ScholarAI/
├── frontend/ # Flutter 모바일 앱 (크로스 플랫폼)
│ ├── lib/
│ │ ├── screens/ # 로그인, 홈, 프로필 등 각 페이지 UI
│ │ ├── widgets/ # 재사용 가능한 UI 컴포넌트
│ │ ├── providers/ # 상태 관리 (Auth, Profile 등)
│ │ ├── services/ # 알림, 게시판, API 연동
│ │ ├── constants/ # 색상, 문자열, 이미지 등 전역 상수
│ │ └── main.dart # 앱 진입점
│ ├── ios/, android/, macos/... # 플랫폼별 빌드 설정
│ └── web/ # PWA용 리소스 (icons, manifest 등)
│
├── backend/ # Spring Boot 기반 REST API 서버
│ ├─ Dockerfile # 도커 이미지 빌드 설정
│ ├─ docker-compose.yml # 컨테이너 구성 파일
│ ├─ build.gradle # Gradle 빌드 설정
│ ├─ settings.gradle
│ ├── src/main/java/dankook.capstone
│ │ ├─ auth # 인증 및 JWT
│ │ ├─ config # 스프링 설정 (Security 등)
│ │ ├─ controller # API 컨트롤러
│ │ ├─ domain # JPA 엔티티
│ │ ├─ dto # 요청/응답 DTO
│ │ │ ├─ request
│ │ │ └─ response
│ │ ├─ repository # 데이터베이스 접근
│ │ └─ service # 비즈니스 로직
│ ├── src/main/resources/ # 설정 파일, application.yml 등
│
├── AI/ # FastAPI 기반 추천 시스템 및 챗봇 서버
│ ├── .gitignore # Git에 포함하지 않을 파일/폴더 목록
│ ├── requirements.txt # Python 패키지 의존성 목록
│ ├── api/ # FastAPI 서버 엔트리포인트
│ │ ├── chatbot_server.py # 챗봇 API 서버
│ │ └── recommend_server.py # 장학금 추천 API 서버
│ ├── config/ # 설정 관련 모듈
│ │ └── settings.py # 환경 변수 및 설정 파일
│ ├── faq_chatbot/ # FAQ 챗봇 로직
│ │ └── faq_loader.py # FAQ 데이터 로더 및 전처리
│ ├── langchain_app/ # LangChain 기반 추천 시스템
│ │ ├── chain.py # LangChain 체인 구성
│ │ ├── embedder.py # 문장 임베딩 모듈
│ │ ├── loader.py # 문서 로딩 및 가공
│ │ ├── prompt_template.py # GPT 프롬프트 정의
│ │ └── retriever.py # 벡터 검색 및 검색기능
│ ├── models/ # Pydantic 모델 정의
│ │ └── user_input.py # 사용자 입력 모델
│ └── utils/ # 전처리 및 유틸성 스크립트
│ ├── convert_xlsx_to_json.py # 엑셀 → JSON 변환기
│ ├── faq_preprocessing.py # FAQ 전처리
│ ├── recommend_preprocessing.py# 추천 데이터 전처리
│ └── scholarship_fetcher.py # 장학금 크롤러 또는 수집기
├── .gitignore Git 제외 파일 설정
└── README.md 프로젝트 개요 및 실행 가이드
For building and running the application you need:
git clone https://github.com/onlyunha/ScholarAI.git
cd ScholarAIcd frontend
flutter pub get
flutter run💡 Flutter SDK 설치 필요: Flutter 설치 가이드
💡 Android Emulator 또는 iOS Simulator 필요
# CLI로 실행
cd backend
./gradlew build # 처음 실행 시 의존성 설치
./gradlew bootRun # 서버 실행
# IntelliJ로 실행
1. 'backend/' 폴더 열기
2. `CapstoneApplication.java`에서 실행💡 기본 포트: 8080
💡 설정파일 위치: backend/src/main/resources/application.yml
💡 JDK 17 이상 권장
💡 Gradle 8.12.1
💡 IntelliJ 또는 CLI
cd AI
pip install -r requirements.txt
uvicorn api.recommend_server:app --reload
uvicorn api.chatbot_server:app --reload --port 8001💡 Pythhon 3.8 이상 권장
Github https://github.com/onlyunha/ScholarAI
📝 Notion: https://enchanted-peripheral-3f3.notion.site/ScholarAI-Project-Plan-1b6f77a0e08e80209e6aeb0ea395fd47
🎥 시연 영상: https://youtu.be/b5SWrRfFYVU?feature=shared











