Sc 00 — Sutoori ProductionIndependent / Agency Website & CMS · 2026
All workSutoori Production — a studio site the team runs itself.
A cinematic portfolio and an authenticated content studio for Sutoori Production, the photo and video agency I co-founded.

01 · Overview
What the project is
Sutoori Production is the student-founded creative team I co-founded and run as COO, covering photography, film and creative production for schools, campuses, communities and events around Bogor. The team needed a home for its work beyond Instagram — one that feels as cinematic as the photographs and that the team can keep current without a developer.
02 · Approach
How I approached it
The public site tells the agency's story in one scroll: an oversized opening that resolves into a photograph, stacked portfolio cards, services and a four-step process, then a direct WhatsApp conversation. The gallery uses filters and an accessible lightbox instead of one page per project, and a practical, minimally animated dashboard sits behind it for the team.
03 · Implementation
From interface to system
Built on Nuxt 4 and Vue 3 in TypeScript, with GSAP for the pinned and scroll-driven scenes and static fallbacks for reduced motion and short screens. Supabase provides authentication, a Postgres schema with row-level security and admin membership, and private and public storage buckets. Server routes enforce sessions and strict validation, check uploads by type and size, and generate real image derivatives with Sharp; publishing rolls back and cleans up when a step fails.
04 · System flow
How the pieces connect
A simplified view of the implemented product flow, not a claim about infrastructure that is not public.
- 01
Showcase
Pinned, scroll-driven storytelling over the team's own photography
NuxtGSAP - 02
Upload
Batch uploads checked by type and size, with real image derivatives
Supabase StorageSharp - 03
Publish
Drafts, signed previews, ordering and publish or unpublish
SupabaseRLS - 04
Inquire
Visitors reach the team on WhatsApp; Instagram stays the outbound feed
WhatsApp
05 · Gallery
Product views
06 · Outcome
What changed
The site is live with the team's own photography, nine services, the process and contact scenes, and a filterable gallery with a lightbox. The admin studio supports batch uploads, drafts, signed previews, focal points, ordering, and publish, unpublish and delete.
07 · Learning
What I learned
Designing for people who are not developers changed the priorities: clear upload feedback, safe defaults and rollback mattered as much as the motion on the public side.