Changelog
Recent ships. We post here when something material lands; minor tweaks live in commit history.
Last shipped · 2026-05-11(1 month ago)
2026-05-11
Five more shipped — sushi-counter portraits, subway-station cutaways, PR descriptions from a raw diff, slow abstract fluid loops, customer-facing incident updates that ban jargon. Catalog spread keeps widening across image / video / text.
2026-05-11
Lightweight ILIKE across title + slug + description, case-insensitive, composes with the existing ?modality / ?tier / ?provider / ?limit filters. Useful for SDK consumers asking 'does a prompt about X exist?' without dragging the full catalog. Real tsvector search still lives on the /search page.
2026-05-11
New /admin/usage-monitor surfaces the two Pro-tier margin triggers — monthly Replicate spend > 60% of revenue, and any single user with ≥ 25 video runs/month. Red / amber callouts when triggers fire, top-20 video-user table with a 'percent of trigger' column highlighting users approaching the ceiling.
2026-05-11
Every run on /me/runs/<id> now shows the cost. Replicate runs say 'Cost · $0.03 on us'; OpenAI / Anthropic / Fal runs say 'billed to your <provider> key'. Failed runs hide the row.
2026-05-11
Catalog parity test + runtime warning ensure the worker's per-model cost lookup never drifts from MODEL_CATALOG silently — a missed entry used to record $0 for that model, hiding real Replicate spend. Both /admin/business and /admin/costs now also exclude failed runs from average-cost calculations.
2026-05-11
Last-24h requests, cache hit ratio, bandwidth saved, threats blocked — pulled from CF's GraphQL Analytics API and cached 5 min. Plus every deploy now auto-purges the CF edge cache so a fresh deploy is visible to visitors immediately.
2026-05-11
Ten more prompts shipped — Tokyo ramen stalls, mountain weather stations, monthly investor updates with decision logs, vinyl spins, rainy-window bokeh portraits, treehouse blueprints, newsletter drafting from rough notes, second-by-second logo reveal loops, async meeting recaps. Image / video / text balance keeps widening.
2026-05-11
SDK consumers can fetch just the latest N (1..200) prompts instead of dragging the full catalog. Pairs with the existing ?modality / ?tier / ?provider filters. Cap stays at 200 — over-large values clamp silently.
2026-05-11
Ten more prompts shipped today — stained-glass windows, macro watch mechanisms, engineering post-mortems, kinetic typography loops, user-research interview guides, ceramic still-lifes, isometric office floorplans, release notes from a raw changelog, product turntables, podcast show-notes. The home hero stats line now reflects the per-modality breakdown live.
2026-05-11
After you finish reading a prompt, the page now suggests up to three other prompts from the same collection so you don't have to bounce back to /collections to keep browsing.
2026-05-11
Type a topic + modality at /admin/prompts/import and the textarea fills with a JSON skeleton in exactly the importer's shape. Pairs with the slug dedup so re-running on the same topic is a safe no-op.
2026-05-11
New 'Surprise me →' link in the home hero bounces you to a random curator prompt. SDK consumers get GET /api/v1/prompts/random, the JSON sibling of the existing /random redirect — same shape as /api/v1/prompts/{slug}, ideal for 'shuffle' features in your own UI.
2026-05-11
The collections gallery now shows total counts right under the search box, so first-time visitors can see the catalog has scale before they click any card. Five more curated prompts added — film-noir portrait, isometric warehouse, launch-tweet thread, ambient cloud loop, freelance quote.
2026-05-11
Run pnpm tsx scripts/draft-prompt.ts "<topic>" <modality> to emit a JSON skeleton in exactly the shape /admin/prompts/import expects. Pairs with the slug dedup the importer already does — drafts whose slug collides with an existing prompt are a safe no-op on re-paste.
2026-05-11
Paste a JSON array of prompt specs at /admin/prompts/import; existing slugs are silently skipped. Round-trip the catalog with the new /api/admin/prompts/export-json endpoint.
2026-05-11
Twelve new image/text prompts (product shots, vintage posters, icon sets, moody landscapes, cyberpunk alleys, tarot cards, ad headlines, changelog generator, bedtime stories, morning-routine coach) + five new video prompts (social hooks, cinematic shots, product spins, ambient loops, abstract morphs).
2026-05-11
Prompt cards now glow per modality (image=sky, video=fuchsia, text=amber) on hover. Collection cards and showcase tiles lift and reveal a thin accent line. Pricing tiers get a 'Most popular' ribbon and per-tier hover colour.
2026-05-11
Suggested-search pills when /search is empty; concrete 'try this' tips when a query has no matches.
2026-05-10
GET /api/v1/runs gained ?status= and ?since= filters. GET /api/v1/prompts gained ?modality= and ?tier= filters. New GET /api/v1/prompts/{slug} lets a script fetch one prompt without scanning the catalog. Quotas response now exposes resetsAt for SDK 'resets in N days' hints.
2026-05-10
API tokens, webhooks, custom-domain checks, and public-profile cards now show 'yesterday' / '5 days ago' / '2 weeks ago' instead of raw locale dates.
2026-05-10
Copy-paste dispatch + poll examples for both languages so a developer goes from 'I read the docs' to 'I have a working script' in one paste.
2026-05-08
Every published prompt has an iframe-friendly card at /embed/<slug>. Copy the snippet from the bottom of any prompt page.
2026-05-08
Studio customers point a CNAME at vanity.artinstring.com; Caddy now provisions a Let's Encrypt cert on first request. No support ticket.
2026-05-08
OAuth sits next to magic-link on /login and /signup. Magic-link still works as the always-available fallback.
2026-05-08
Each account gets a /me/referrals page with a share link. Friends who sign up are attributed to you. Reward program lands soon — early sharers get backfilled.
2026-05-08
Bearer-token API for dispatching runs from your scripts, plus an SSE stream of run status. See /docs/api.
2026-05-08
MRR, churn, conversion, spend. /admin/business.
Want a heads-up when something useful ships? Sign up and toggle email digests in /me/settings.