방O빈
프로젝트 목록으로

daypick (데이픽)

그룹 일정을 쉽게 조율하는 PWA

Flutter WebSupabaseRiverpodCloudflare Pages
  • 백엔드 서버 없이 Supabase만으로 권한 모델 설계
  • PWA로 배포

문제 정의

여러 명의 가능한 시간을 모아 그룹 일정을 잡는 과정이 번거롭다는 문제를 해결하기 위해, 별도 서버 없이도 안전하게 동작하는 일정 조율 PWA를 만들었습니다.

기술적 의사결정

  • 별도 백엔드 서버 없이 Supabase만으로 구성하여 운영 부담을 최소화
  • 익명 로그인 + RLS(Row Level Security) 정책으로 사용자별 데이터 접근 권한을 안전하게 분리
  • 초대 코드 조회는 RLS를 우회해야 하므로 SECURITY DEFINER RPC 함수로 안전하게 노출 범위를 제한

마주친 문제와 해결

문제 · 서로 다른 사용자가 초대 코드로 모임에 참여할 때, RLS 정책상 코드만으로는 해당 모임을 조회할 수 없는 문제

해결 · 조회 권한을 정의된 범위로만 여는 SECURITY DEFINER RPC 함수를 만들어, 초대 코드로 필요한 정보만 안전하게 가져오도록 설계

문제 · 날짜 비교 로직에서 발생한 버그

해결 · TODO: 날짜 비교 버그의 원인(예: 타임존/시·분 포함 비교)과 해결 방법 구체화

결과

Cloudflare Pages에 PWA로 배포해 설치 없이 바로 사용할 수 있도록 했습니다. TODO: 사용자 수·반응 등 성과 추가

링크