POST a sentence, get a hand-drawn whiteboard explainer. Deterministic CPU rendering — labels, arrows and numbers are always exactly what you asked for. MP4, static SVG, animated SVG.
Get an API key — from $15 Try free in the browser
https://api.programmaticsketch.dev · Auth: X-API-Key header · Free watermarked previews: 2/IP/day without a key.# 1. Submit a render job
curl -X POST https://api.programmaticsketch.dev/v1/render \
-H "X-API-Key: sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"How our onboarding works: sign up, connect data, invite team, go live","format":"mp4"}'
# → {"job_id":"abc123","status":"rendering","poll":"https://api.programmaticsketch.dev/v1/jobs/abc123"}
# 2. Poll until done (~20–60s)
curl https://api.programmaticsketch.dev/v1/jobs/abc123
# → {"status":"done","url":"https://llmsketch.com/renders/abc123.mp4", ...}
# 3. Download
curl -O https://llmsketch.com/renders/abc123.mp4
| Endpoint | Auth | Body / params | Returns |
|---|---|---|---|
GET / POST/v1/sketch | key or 10/day tool | spec (SceneSpec JSON) or prompt; format: svg | png | animated_svg; raw=1 for direct image | CDN image URL + copyable Sketch URL (zero-GPU PIL/SVG) |
POST/v1/render | key or 2/day free | prompt (≤600 chars) or scene; format: mp4 | svg | animated_svg | png; judge (bool) | job_id + pre-render judge status (or 422 if rejected before FFmpeg) |
POST/v1/draw-and-verify | key or 10/day tool | prompt, optional scene, format, auto_repair | Verified diagram + judge score + Reverse JEV critique questions |
POST/v1/stack-map | key or 10/day tool | raw_text (or docker_ps, nginx_t, systemctl_units), format | Model-free architecture map + unowned/unbacked/failed flags |
POST/v1/drift-sketch | key or 10/day tool | before_text, after_text, format | Model-free diff diagram (+added / ~changed / -removed) + Reverse JEV |
POST/v1/problem-sketch | key or 10/day tool | problem, optional reaction / solution_attempt, format | Forward-JEV question whiteboard + domain classification |
POST/v1/reverse-answer | key or 10/day tool | answer, optional problem, format | Reverse-JEV gap audit whiteboard + missing assumptions |
GET/v1/jobs/{id} | none | — | status: rendering / done / error, url when done |
GET/health | none | — | service liveness |
GET/v1/pricing | none | — | plans + credit amounts |
Errors: 402 invalid key / no credits · 429 free tier limit (2/day video, 10/day tool) · 422 rejected before FFmpeg · 503 storage gate paused.
Pass scene instead of prompt for full control. 2–4 steps, left-to-right flow:
{
"title": "How the Fish Wall Works",
"subtitle": "Your name, your fish, your place on the wall",
"steps": [
{"label": "Join", "detail": "Name + phone, 20 seconds"},
{"label": "Buy", "detail": "Pay cash or WhatsApp"},
{"label": "+1 Tap", "detail": "Staff logs each sandwich"},
{"label": "Claim", "detail": "Free at 10/50/100/500"}
]
}
Constraints: label ≤ 16 chars, detail ≤ 30 chars, title ≤ 30 chars. Output canvas 1280×720, paper #FCFAF4, ink #1A1A2E, hand-drawn double-pass jittered strokes.
Ready-to-import templates: turn blog posts, changelogs or product updates into narrated whiteboard shorts on a schedule.
⬇ n8n workflow JSON ⬇ Make.com HTTP template
// Make.com: HTTP module config
URL: https://api.programmaticsketch.dev/v1/render
Method: POST
Headers: X-API-Key: {{your_key}} · Content-Type: application/json
Body: {"prompt":"{{blog_post_summary}}","format":"mp4"}
// Then: sleep 45s → GET /v1/jobs/{{job_id}} → download url → post to socials
| Plan | Price | Credits | Extras |
|---|---|---|---|
| Credit Pack | $15 one-time | 50, never expire | API access |
| Starter | $19/mo | 60/mo | voiceover + music bed |
| Pro | $49/mo | 250/mo | 1080p, custom audio, webhooks |
| B2B Fast Pack | $249 one-time | 10 custom videos | delivered in 24h |
Checkout on llmsketch.com — key appears instantly after payment.
Generative video models garble text and misalign arrows. This engine rasterizes real TrueType fonts and exact geometry with a Rough.js-style hand-drawn finish — every label is correct, every render is reproducible, and marginal compute cost is $0 on sovereign CPU. That's how we keep prices flat while video-AI APIs charge per second.
Test all three programmatic endpoints directly against https://api.programmaticsketch.dev. Leave API Key blank for the free tier (10/day).
Pass any SceneSpec JSON — no LLM needed — and get a deterministic URL + hosted image.
Paste output from docker ps, nginx -T, and systemctl list-units. Parsed client/server-side with zero LLM cost; flags unowned services and unbacked domains.
Compare Before vs. After stack snapshots. Highlights +added, ~changed, and -removed nodes plus Reverse JEV questions about unexplained changes.