개요#
학생이 결과가 아닌 과정을 제출·분석받을 수 있는 통합 교육 플랫폼. 코딩, 글쓰기, 퀴즈, 시험 감독까지 한 시스템에서 처리하고, Gemini 기반 AI 가 “코드 작성 과정” · “글쓰기 과정” · “지식 그래프” 를 분석해서 학생·교강사 각자에게 다른 레이어의 피드백을 돌려준다.
- 개발 기간: 1주
- 코드 규모: 약 64,400줄 (프론트 44,500 + 백 19,800)
- UI: 28페이지, API: 168개 엔드포인트
- 지원 언어(코딩 과제): Python / JS / C / C++ / Java / C# / Rust / Go / ASM
핵심 기능#
- 3종 과제 통합 — 코딩(OJ 판정 9개 언어), 글쓰기(TipTap), 퀴즈(자동 채점)
- AI 학습 분석 (11종) — 자동 채점·피드백, 소크라테스식 튜터, 복붙 감지, 노트 갭 분석, 주간 리포트 등
- 스냅샷 기반 과정 추적 — 코드 작성 중 스냅샷 자동 저장, 붙여넣기 추적, diff 비교
- Obsidian 스타일 지식 그래프 — Force-directed 레이아웃, 노트 간 관계 자동 분석, 양방향 링크
- 시험 감독(Proctoring) — 전체화면 이탈 / 탭 전환 / 스크린샷 / 감사 로그
- 게임화 — 24단계 티어, 55개 시각 이펙트, 3단계 테마 커스터마이징
- 다중 역할 — 교강사 / 학생 / 개인 학습자 전환
기술 결정#
- Gemini 3단계 폴백 — 모델 실패 시 순차적 degradation 으로 사용자 경험 유지
- SSE 실시간 스트리밍 — AI 응답·채점 진행률 즉시 반영
- Supabase RLS — DB 레벨에서 역할 기반 권한 강제
- 모노에디터 Monaco — VSCode 와 동일한 DX 를 브라우저에서
역할 / 작업 방식#
설계·개발 전반을 혼자 진행. AI 바이브코딩(vibe coding) 으로 만든 프로젝트 — 큰 그림과 의도, 설계 의사결정은 직접 하되, 보일러플레이트·반복 코드·세부 구현은 AI 와 빠르게 주고받으며 1주 안에 풀스택을 완성하는 워크플로우를 그대로 적용했다. “혼자 1주에 60K 줄” 은 손으로만 친 게 아니라 그 워크플로우 덕분에 가능했다는 점을 솔직히 명시.
회고#
- 바이브코딩의 한계도 같이 봤다 — AI 가 생성한 코드를 그대로 쓰면 일관성·아키텍처가 무너진다. 설계와 리뷰는 결국 사람이 해야 한다는 걸 체감.
- 그 경험이 std::N (이 사이트) 의 admin 에디터에 AI 보조 기능을 직접 만들어 넣은 동기가 되기도 했다.