아이디어 노트
[기술 스택]
Front-End : Kotlin
Back-End : Django
Database : MySQL
Server : KCLOUD
IDE : Android Studio, Visual Studio Code
SDK : 네이버
API: Openai API
[기능 명세서]
Tab Number | 기능 | 세부 사항 |
0 | 프로필 등록 | 회원 가입(선택) 및 영웅 등록 |
1 | 프로필 | 영웅 정보, 레벨 정보(직급 정보), 경험치 정보, 실시간 업데이트 |
1-1 | 순위표 | 타 사용자 영웅 정보, 타 사용자 레벨 정보 |
1-2 | AI 추천 퀘스트 | AI 추천 시스템, 시간 단위로 체크하기(열품타 처럼 + 방해금지모드) |
2 | 일기장 | 일기장 페이지 |
[API 명세서]
Category | API Number | Endpoint Name | URL |
사용자 계정 | ㅤ | 회원 가입 | /signup |
ㅤ | ㅤ | 유저 정보 조회 | /user_info |
ㅤ | ㅤ | 유저정보 등록 | /user |
ㅤ | ㅤ | 유저정보 업데이트 | /update |
ㅤ | ㅤ | 유저 삭제 | /user_delete |
ㅤ | ㅤ | 캐릭터 변경 | /user_character |
ㅤ | ㅤ | 네이버 로그인 | /login_naver |
순위표 | ㅤ | 순위표 조회 | /ranking_info |
ㅤ | ㅤ | 순위표 등록 | /ranking_create |
ㅤ | ㅤ | 순위표 업데이트 | /ranking_update |
ㅤ | ㅤ | 순위표 삭제 | /ranking_delete |
퀘스트 | ㅤ | 퀘스트 조회 | /quest_info |
ㅤ | ㅤ | 퀘스트 업데이트 | /quest_update |
ㅤ | ㅤ | 퀘스트 완료 | /quest_complete |
ㅤ | ㅤ | 퀘스트 삭제 | /quest_delete |
일기장 | ㅤ | 일기장 조회 | /diray_info |
ㅤ | ㅤ | 일기장 등록 | /diary_create |
ㅤ | ㅤ | 일기장 업데이트 | /diary_update |
ㅤ | ㅤ | 일기장 삭제 | /diary_delete |
상점 | ㅤ | 상점 조회 | ㅤ |
ㅤ | ㅤ | 상점 구매 | ㅤ |
ㅤ | ㅤ | ㅤ | ㅤ |
[데이터베이스 스키마]

코드
// Use DBML to define your database structure // Docs: https://dbml.dbdiagram.io/docs Table User { user_id integer [primary key] user_name string hero_name string level integer title string coin integer age integer background_id integer character_id integer } Table Diary { diary_id integer [primary key] contents string user_id integer created_at timestamp } Table Quest { quest_id integer [primary key] contents string is_complete bool progress_time time complete_time time user_id integer type string created_at timestamp } Table Item { item_id integer [primary key] item_name string itme_price integer itme_type enum } Table Receipt { receipt_id integer [primary key] user_id integer item_id integer } Ref: Diary.diary_id > User.user_id // many-to-one Ref: Receipt.user_id > User.user_id Ref: Receipt.item_id > Item.item_id Ref: Quest.quest_id > User.user_id // many-to-one

