프로젝트 배경
1) 예상 리스크 및 대응 계획 - Supabase Realtime과 RLS를 동시 활성화하면 subscription 필터 설정이 복잡해지는 리스크가 있으며, channel 단위 필터(filter: 'class_id=eq.X')로 대응할 계획입니다. - 전자칠판 환경에서 WebSocket 연결 불안정 리스크가 있으며, 자동 재연결 로직과 오프라인 fallback UI를 구현하여 대응할 계획입니다. - 멀
프로젝트 성과
Supabase Realtime + RLS 동시 적용 구조 설계
Realtime subscription과 RLS 정책을 동시에 적용하여 학생별 데이터 격리를 유지하면서 교사-학생 실시간 동기화를 구현하는 아키텍처를 설계합니다.
3역할 JWT custom claims 기반 권한 체계
student/teacher/admin 역할을 JWT에 삽입하고 Next.js middleware + Supabase RLS 이중 레이어로 권한을 검증하는 구조를 구축합니다.
전자칠판 전용 UI 최적화 설계
1920px+ 대형 화면에서 Fullscreen API와 container query를 활용한 전자칠판 전용 레이아웃을 적용할 예정입니다.
멀티테넌시 school_id 격리 구조
모든 테이블에 school_id를 FK로 설정하고 RLS에서 자동 필터링하는 멀티 학교 SaaS 데이터 격리 구조를 설계합니다.
핵심 기능
진행 단계
DB 설계 및 Supabase 환경 구성
2026.03.
Supabase 스키마 설계 + RLS 정책 (school/class/student/teacher 테이블)
프로젝트 상세
1) 포트폴리오 소개 중학교 진로탐색워크북 디지털화 공고의 요구사항(학생 워크북 작성, 교사 실시간 대시보드, 전자칠판 수업 화면, 역할 기반 접근 제어)을 기반으로 직접 구현한 맞춤 데모입니다. Supabase Realtime으로 교사-학생 간 실시간 동기화를 구현하며, 프로젝트 착수 시 이 데모를 그대로 확장하여 빠르게 개발을 진행할 수 있습니다. 2) 작업 범위 - 학생 워크북 작성 화면: 학생







