ZenityX Studio
Thailand's most complete AI creative platform — 22 production models, 6 generators, 2,300 active users. Built in 6 months, valued honestly.
ZenityX Studio is a production-grade AI creative SaaS aggregating 22 generative models behind a single Thai-language UX with Thai payment rails. This document reports what it would cost to rebuild at Bangkok engineering rates, with honest disclosure of strengths and diligence flags. Headline figure assumes standard rates plus battle-testing and brand/IP premium — full methodology in §5–§6.
Not a Lovable scaffold. Not a thin GPT wrapper. A six-generator AI creative suite with full SaaS infrastructure, designed for the Thai prosumer creator economy.
Video, Image, Avatar lip-sync, Voice, Image Upscale, and a user-authored Skills workflow builder. Each generator built as a dedicated dispatcher, all sharing one unified UX, credit ledger, and asset library.
Video: Kling (5 variants), Seedance, Hailuo, Veo 3.1, Sora 2 Pro, Cinematic, Gemini Omni. Image: Nano Banana, GPT Image-2, Seedream v4.5, Flux 2, Grok Imagine. Lip-sync: OmniHuman 1.5, InfiniteTalk, WAN 2.2 Animate. Voice: ElevenLabs catalog.
Omise payments with PromptPay QR + Thai credit cards. Thai UI/UX. Bangkok-tier credit packages. Cloudflare R2 for fast asset delivery in SEA. Built for the local prosumer creator — not retrofitted from a Western product.
Supabase Auth with RLS-secured Postgres (98 policies), real-time updates, dedicated mobile UI (15 components), full admin console — sales analytics, error monitor, model performance dashboards, community feed with masonry layout. Not a prototype.
Each is a self-contained product. Together they cover the full creative pipeline from idea → text → image → video → talking-head → upscaled asset, all in one credit system.
11 model variants in one dispatcher: Kling 2.1 / 2.5 / 2.6 / 3.0 / MotionControl, Seedance 1.5 Pro & 2, Hailuo 2.3, Veo 3.1 (Fast + Quality), Sora 2 Pro (T2V + I2V), Cinematic, Gemini Omni. Frame-ref upload, multi-shot, web-search, auto-aspect, watchdog sync.
Six providers in one panel: Nano Banana (Pro tier), GPT Image-2, Seedream v4 + v4.5 (text-to-image + edit), Flux 2, Grok Imagine. Background-removal toggle, image @-mention in prompt, reference-image pipeline.
Three lip-sync engines with role-typed inputs: OmniHuman 1.5, InfiniteTalk (single/multi-speaker), WAN 2.2 Animate. Drag-from-gallery, multi-audio reflow, audio-to-talking-head pipeline integrated with Voice Generator.
ElevenLabs TTS with full voice-catalog browser cached in Postgres (voice_catalog table). Outputs flow into Avatar Generator as audio input. Supports preview + voice search.
Dedicated image-upscaling flow with provider routing. Adaptive thumbnail handling, gallery integration, library persistence.
User-authored multi-step pipelines chaining models with typed inputs (reference_image, first_frame, motion_video, audio). Public/private skills, favorites, prefill. The first community-creator workflow engine in Thai AI SaaS — moat candidate.
Numbers an acquirer's technical diligence will verify in the first hour. Sourced from docs/valuation/01-tech-inventory.md — every figure is grep-able in the repo.
Frank breakdown: ~60% of the codebase is configured shadcn/Supabase plumbing (commodity). The remaining ~40% is the genuine asset. Three pieces stand out.
The video dispatcher encodes provider quirks across 11 model variants. Adding a new model = config + one buildPayload. Sister dispatchers (Avatar 1,625 LOC, BytePlus 1,628 LOC) follow the same pattern. A competitor must rebuild model-by-model — every variant has its own settings UI, validation, and provider edge cases.
User-authored pipelines with role-typed inputs powered by skills, skill_steps, skill_runs, skill_favorites tables and a 404-LOC run-skill edge function. Real workflow engine, not glue code. Community-creator network-effect candidate — every shared Skill is content + retention lever.
ai_models catalogSingle entry point normalizes 4+ provider payload shapes into a unified result. The ai_models table acts as a runtime feature-flag + pricing engine — operator can add or disable a model, change credit cost, toggle maintenance without a code deploy. Operationally rare for a 6-month-old product.
Function-based estimate, not LOC-based (LOC over-credits AI-agent code). 1,500 person-days of productive engineering work — ≈ 6 person-years solo, 2 years for a 3-person team, or 18 months for a 4-person team. Three Bangkok rate scenarios below.
docs/valuation/02-valuation.md.
Replacement cost (floor) + 2,300-user traction add (small but real) + strategic premium (situational). Honest valuation reports a range; single numbers are marketing, not finance.
These are real, named, and already absorbed into the conservative end of the valuation range. Listed here so investors hear them from us first, not from their lawyer second.
~15 of 22 model integrations route through one API gateway (api.kie.ai). WaveSpeed is the only meaningful second-source. Owner is already monitoring (KIE credits badge added 2026-05-13). Mitigation: 1–2 weeks per top model to add a second-source provider.
Zero .test.ts* / .spec.ts* files in src/. Playwright scaffolded but no specs. No .github/workflows/. TypeScript strict: false. Acquirer discount likely 10–15%. Mitigation: 2–3 weeks to stand up the basics.
VideoGenerator.tsx 3,771 LOC; BytePlusGenerator.tsx 1,628 LOC; AvatarGenerator.tsx 1,625 LOC. Adding a new model edits the same file as every existing model. Owner has a written refactor plan (docs/superpowers/plans/2026-05-21-videogenerator-refactor.md) — executing it before pitch makes this discount disappear.
Deploy + dev pipeline coupled to Lovable Cloud (migration is possible — it's just Vite + Supabase — but day-1 ops change). Omise-only payments limit reach beyond Thailand. No legal/terms pages yet. All are fixable inside a 4-week diligence window.
For diligence: docs/valuation/01-tech-inventory.md (technical inventory) and docs/valuation/02-valuation.md (full methodology) sit alongside this document in the repo. Live product at studio.zenityx.com.
Contact: Trin · ZenityX · trin@zenityx.com · (swap with preferred channel before sharing)