ozhiv.ai — a meme video from the user’s photo
ozhiv.ai
- Production
- 11+ templates
- the full cycle: landing → payment
Task: take the user from the first screen to a paid clip — the whole product.
How it works
- 01LandingExamples of the work and the choice of template
- 02Sign-inSupabase and Google OAuth
- 03Photo and templatePhoto upload, 11+ templates
- 04GenerationSeedream → Kling, watermarks and S3
- 05GalleryYour own clips in the personal account
END-TO-END BILLING — credits per generation, Tinkoff payment confirmed by webhook
Particulars and difficulties
The face has to stay the user’s own
If the model drifts the likeness, the clip stops being about the user — the pipeline holds identity
Every generation costs money
Credits and limits are counted before the run, so the cost of a clip is predictable
Payment confirms itself
Tinkoff acquiring closes by webhook: credits are granted on the fact of payment, not on a redirect
The content goes to social media
Watermarks are applied automatically (ffmpeg, sharp) and the finished file is already in S3
Results
- 11+
- clip templates in production
- 2
- landing languages: RU and EN
- 0
- manual steps from payment to clip
A whole product, not a demo
Landing, authorisation, generation, billing and gallery work in one live contour
The clip is ready to publish
The watermark and the format are set and the file is in the account right after generation
Stack
Next.js 16 · React 19 · Tailwind 4 · Supabase · Tinkoff · ffmpeg · S3 · Coolify