ai newsSa., 31. Okt.
EilmeldungAlphabet's $500 Billion Wipeout: The Day AI Search Came for Google's Cash Machine

Alors on Danse AI: Template-Locking a White-Studio Keyboard Duo

How I shipped a two-photo → white-studio mini-keyboard duo on Cloudflare Workers — template lock first, Seedance via TryAllAPI second. tryalorsondanse.video ships a single recognizable remake: white-studio mini-keyboard duo — Photo 1 on the keys (left), Photo 2 bringing the energy (right), ~15s MP4

dev.toSamstag 06:20 · 31.10.3 Min. Lesezeit
Bild: dev.to

Posted on Oct 31 • Originally published at tryalorsondanse.video

How I shipped a two-photo → white-studio mini-keyboard duo on Cloudflare Workers — template lock first, Seedance via TryAllAPI second.

tryalorsondanse.video ships a single recognizable remake: white-studio mini-keyboard duo — Photo 1 on the keys (left), Photo 2 bringing the energy (right), ~15s MP4 at 480p/720p with original AI electronic audio (not the commercial song). Independent fan tool, 2026.

This article is about template lock as a product strategy: why the homepage refuses to become a prompt IDE, and how that simplifies Stripe credits + Seedance calls through TryAllAPI. Prices and model ids change; treat live site / console as source of truth.

The create panel is a storyboard with two slots:

Viral remake of the white-studio keyboard sketch — explicitly not selling the commercial track. Original AI audio keeps the download usable without claiming a master recording.

Live pricing verified while writing: create around $8.88 ≈ 1× 720p (500 credits), with packs like $16.99 and larger. Guest checkout. Soft CTA only — check the live button before you publish a price screenshot.

Flexible video models are great for labs and terrible for conversion on meme formats. Template lock gives you:

two portraits → studio duo template → check credits (else Stripe) → Worker creates Seedance task via TryAllAPI → poll until MP4 URL → store / show → on failure: refund credits Enter fullscreen mode Exit fullscreen mode Why a video API aggregator Operational checklist after register / top-up:

Conceptually the call shape looks like this (field names follow the aggregator’s v3 contents API; always re-check current docs):

POST /api/v3/contents/generations/tasks Authorization: Bearer <TRYALLAPI_API_KEY> Content-Type: application/json Accept-Encoding: identity GET /api/v3/contents/generations/tasks/{id} Enter fullscreen mode Exit fullscreen mode I send Accept-Encoding: identity from the Worker because some gateways behave badly with transparent decompression. Model ids used in production look like Seedance 2.x family strings — treat console ids as source of truth, not this paragraph.

A few details that bit me across this family of sites:

Rough mental model for upstream cost (illustrative only — use your own usage fields and invoices):

tokens ≈ duration_sec × width × height × fps / 1024 cost ≈ tokens × price_per_million_tokens Enter fullscreen mode Exit fullscreen mode Price the site after you measure a few real runs with retry margin, Stripe fees, and failed-job refunds — not from a spreadsheet fantasy of 0% failure.

Duo-specific: map images to roles consistently (keys vs dance); generate_audio on for this product’s “finished file” feel.

Demo UIs are easy. The line between toy and product is:

Two books of account stay separate: USD balance at TryAllAPI (your cost) vs site credits (what you sold). Mixing them in one mental ledger is how you underprice or invent “mysterious” losses.

When several products share one Stripe account, isolate webhooks by endpoint or by metadata ( site / product ). Callbacks pointed at the wrong apex domain are a classic multi-site footgun.

Secrets stay in Workers: TRYALLAPI_API_KEY, STRIPE_SECRET_KEY, webhook secret, auth secrets. The browser only ever sees publishable Stripe keys if needed.

pnpm install # wire D1 database_id, production env, custom domain in wrangler pnpm cf:deploy Enter fullscreen mode Exit fullscreen mode Before calling a deploy “done”:

Production origin: https://tryalorsondanse.video.

Face-based generation is not “just another SaaS CRUD app”:

Those constraints belong in the product, not in a footnote you add after the first dispute email.

Consumer path: tryalorsondanse.video. Builder path: TryAllAPI. Lock the studio sketch; meter the credits.

Quelle: dev.to (dev.to). Original öffnen