Local-first · Open-source · Remotion-style

Ship App Store screenshots
at the speed of code.

Write your screenshots once in React. Export every Apple and Google format, in every language, in a single click.

No account, no cloud — everything runs on localhost:3000.

Live examples

Rendered from projects/flipia/

Workflow

Five steps. One minute per app.

01

Create a project

Drop a folder in projects/ with config.json (name, bundleId, languages). It appears in the dashboard instantly.

02

Write screenshots in JSX

Eight TSX files describing each screen with React components from @/components/aso. Or let Claude Code write them from your ASO brief.

03

Upload app captures

Drag and drop your Xcode simulator or Android emulator screenshots. Reference them with <AppMockup /> inside a DeviceFrame.

04

Click Export

Pick screenshots, formats, and languages. Puppeteer renders at 2x DPR, Sharp downsamples with Lanczos3. Pixel-exact PNGs.

05

Upload to the stores

Output is ready-to-upload to App Store Connect and Google Play Console. Done in under a minute per app.

What's inside

Built for devs who ship apps.

Deterministic renders

Chromium with 26 Remotion-style flags. Colors in sRGB, fonts without hinting, deterministic frames.

Every store format

iPhone 6.9, 6.7, 6.5, 5.5, iPad 13, iPad 12.9, Android phone, Android tablet 7 and 10.

Multi-language

Declare languages in config.json, ship one dictionary, export one folder per locale.

Selective export

Pick exactly which screenshots, formats, and languages to render. Skip the rest.

8 reference templates

Hero, Device Center, Split, Tilted 3D, Minimalist, Floating UI, Dark SaaS, Call to Action.

AI-friendly by default

Ships with a Claude Code skill. Point it at an ASO brief, get a full project scaffolded.

Ready to ship your next app?

Start with the three-minute quickstart in the docs. The dashboard and your first project are one page away.