Overview
Sherin for FLUX is a self-hosted private creative workspace for one owner who wants direct Black Forest Labs image generation with their own key, domain, and storage. It ships with Studio, Gallery, References, Usage, and Profile dashboard surfaces gated by Supabase Google OAuth and an owner email allowlist.
What you can build
- An owner-only image generation studio for FLUX models.
- Schema-aware prompt forms with exact fields, ratios, durations, moderation, seeds, and reference inputs.
- Image input workflows with URL-based and upload-based source assets.
- A private gallery that can display stored image outputs from completed generations.
- Usage and profile dashboards for provider status, storage status, queue state, quotas, and deployment settings.
What you need
- Next.js for the dashboard routes, server actions, and worker trigger.
- Supabase for Auth, Postgres generation records, and owner profile state.
- Google OAuth for owner sign-in through Supabase Auth.
- Black Forest Labs for direct image execution with
BFL_API_KEY. - BabySea for optional hosted execution with
BABYSEA_API_KEY. - Supabase Storage for the default generated media and reference storage path.
- AWS S3 for optional generated media storage.
- Cloudflare R2 for optional S3-compatible generated media storage.
- Vercel Blob for optional Vercel-backed generated media storage.
- Sentry for optional production observability.
- Cron or an external scheduler for optional
/api/generations/processrecovery. - For hosting, you can deploy using DigitalOcean, Netlify, Railway, Render, or Vercel.
Description flow
The owner enters through Supabase Google OAuth, and Sherin checks the account email against OWNER_EMAIL before loading the private dashboard. Studio, Gallery, References, Usage, and Profile then operate as a single-owner workspace for that deployment.
In Studio, the owner selects a Black Forest Labs model, writes a prompt, tunes Semantic Lady schema fields, and attaches supported image references from URLs or uploads. Sherin prepares only the fields supported by the selected model and sends direct Black Forest Labs requests when INFERENCE_PROVIDER=bfl.
On submit, the server creates a generation record, persists input assets when needed, stores request metadata, and dispatches queued work through the dashboard or worker route. Black Forest Labs task responses are polled until completion, and completed outputs can be copied into the configured storage provider.
When a generation settles, Gallery shows the stored image output, failed state, or unavailable asset state. References keeps reusable input media links close to the workflow, while Usage and Profile show provider configuration, storage posture, quota settings, and owner-visible deployment details.
