Security & Privacy

How this platform was built and how it's protected

Overview

superTest was built by one developer as a side project for the Supercell AI Lab batch. It follows security best practices but has not been audited by a dedicated security team. Here's an honest breakdown of how it works.

Authentication

Google OAuth via Supabase Auth. No passwords are stored. Session tokens are managed as HTTP-only cookies and automatically refreshed by Supabase.

Account access requires admin approval. After signup, you cannot access the platform until your status is set to 'approved' by an admin.

Database

PostgreSQL on Supabase with Row Level Security (RLS) policies enabled. Every table has RLS enforced:

  • Profiles — viewable by everyone, only you can update yours
  • Games — public games viewable by all, create/edit/delete restricted to owner
  • Feedback — only visible to the reviewer and the game owner
  • Storage — authenticated users can upload, only delete their own files

All database queries use Supabase client library's parameterized queries, which prevent SQL injection. No raw SQL strings are constructed in application code.

Data Storage

Data stored: Google profile info (name, avatar URL), Supercell email, cohort selection, game builds/cover images (Supabase Storage), feedback responses, review points.

Game files and cover images are stored in a public Supabase Storage bucket. Upload requires authentication, but anyone with the URL can download them.

What's NOT Covered

  • No end-to-end encryption — data is encrypted at rest by Supabase infrastructure, but not E2E encrypted
  • No rate limiting — API rate limiting is not implemented (relies on Supabase defaults)
  • No penetration testing — has not been professionally security audited
  • Storage bucket is public — uploaded files are accessible if you know the URL

Tech Stack

Framework

Next.js 16 (App Router)

Auth

Supabase Auth (Google OAuth)

Database

Supabase PostgreSQL + RLS

Storage

Supabase Storage

Styling

Tailwind CSS v4

i18n

EN / JA (client-side)

Testing

Vitest + RTL

CI

GitHub Actions

This platform is designed for internal testing within the Supercell AI Lab cohort. Avoid uploading highly sensitive data. If you find a concern or a bug, DM @ijtihedk on Slack.