오답노트가 좋다는 건 다들 알지만, 문제를 옮겨 적고 다시 찾아 푸는 일이 번거로워서 오래 가지 못합니다. OnO 는 문제를 사진으로 올리면 한 장이 완성되고, 복습할 때가 된 문제를 먼저 모아 주는 앱입니다. 2024년 8월 앱 스토어에 처음 출시했고, 지금도 실사용자가 쓰고 있는 서비스입니다.
아래는 앱의 주요 화면과, 그 화면 뒤에서 이 서버가 하는 일입니다.
화면별 설명은 앱 저장소 README 에 더 자세히 있습니다.
Backend
Data
Infra
External
OnO_BACKEND
├── src/main/java/com/aisip/OnO/backend
│ ├── auth # JWT 발급과 갱신, Security 설정
│ ├── user # 계정, 프로필, 탈퇴
│ ├── problem # 오답노트, AI 분석, 복습 일정 계산과 복습 알림
│ ├── problemsolve # 다시 푼 기록
│ ├── practicenote # 복습 세트와 복습 시간 알림
│ ├── folder # 공책
│ ├── tag # 태그와 검색
│ ├── learningcalendar # 학습 달력
│ ├── learningreport # 학습 리포트와 AI 추천
│ ├── mission # 일일, 주간 미션과 레벨
│ ├── achievement # 훈장
│ ├── cosmetic # 개구리 꾸미기
│ ├── studyroom # 스터디룸, 챌린지, 문제 공유, 주간 리포트
│ ├── notice # 공지
│ ├── feedback # 사용자 피드백
│ ├── admin # 관리자 화면 (/admin)
│ ├── common # 공통 응답과 예외, JWT 필터, 사용량 제한
│ ├── config # RabbitMQ 큐와 Producer, Consumer, Flyway 설정
│ └── util # S3, FCM, OpenAI, Redis, Quartz, Discord 연동
├── src/main/resources
│ ├── db/migration # Flyway 마이그레이션
│ └── templates # 관리자 화면 Thymeleaf 템플릿
├── src/test # Testcontainers 기반 테스트
├── monitoring # Prometheus, Grafana, Loki, Alertmanager 설정
├── scripts/smoke # 배포 후와 매시간 도는 스모크 테스트
├── .github/workflows # 테스트, 빌드와 배포, 스모크 테스트
└── docker-compose.*.yml # local, dev, prod 컨테이너 구성
문의 ono.dev.team@gmail.com













