Overview
Sherin for BFL 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.
Use it when you want a deployable FLUX workspace rather than a managed SaaS product. The starter runs on Next.js with Semantic Lady-driven model fields, direct BFL BYOK execution, optional BabySea mode, Supabase Auth and Postgres, and storage choices across Supabase Storage, AWS S3, Cloudflare R2, and Vercel Blob.
What you can build
- An owner-only image generation studio for FLUX 1.1 and FLUX 2 models.
- Schema-aware prompt forms with BFL model fields, output formats, dimensions, ratios, and safety controls.
- URL-based and upload-based image reference workflows for generation inputs.
- A private gallery for queued, running, succeeded, failed, and unavailable generation records.
- 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 FLUX 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 BFL model, writes a prompt, tunes Semantic Lady schema fields, and attaches optional image references from URLs or uploads. Sherin prepares only the fields supported by the selected model and sends direct BFL 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. BFL responses are polled through the provider polling_url, and completed outputs can be copied into the configured storage provider.
When a generation settles, Gallery shows the stored image, failed state, or unavailable asset state. References keeps reusable input image links close to the workflow, while Usage and Profile show provider configuration, storage posture, quota settings, and owner-visible deployment details.
