A small sailboat with an orange sail on a lake below green hills and pink clouds, with an open laptop on the grass

One keyword. One site

An open-source starter for a fleet of keyword sites: shared core, a new site in an afternoon, taking payments the day it launches

> Read shipwords.dev/llms.txt and build a site for ""

Type your own keyword, copy, and paste into Claude Code, Codex or Cursor

Built for a fleet of keyword sites

The core is shared; each site's business is its own. Put up a site for every new keyword, leave the ones that don't take off, keep improving the ones that do. Fix a bug in the shared parts once, and every site can take the update.

The viral original288K likes on TikTok · not made with shipwords
Made on Tiny Desk AIAll five swapped for dogs in one run · the dogs are AI-generated

Proven AI, built in

Tiny Desk AI is built on shipwords, and its full source is in the repo. Left, the viral TikTok. Right, the same clip made on the site with all five people swapped for dogs.

  • Video templatesTurn a viral clip into a template: visitors upload photos and get the same video back. Tiny Desk is the first one, ready to copy.
  • Face swap that holds upOutfits matched, lips synced to the song, and any shot where the face didn't change is redone automatically.
  • The popular models, built inGPT Image, Nano Banana, Seedream, FLUX, Seedance, Veo, Kling, Wan and more. Add one API key and pay per generation.
  • A real site to forkPages, pricing and the video pipeline of tinydeskai.io, ready to fork for your own keyword.

Takes money out of the box

Accounts, payments, orders and notifications come with every site. Make the page about your keyword and open for business.

  • Google and email sign-in
  • Account page
  • Stripe and PayPal
  • Credit packs and plans
  • Orders and refunds
  • Email notifications
  • Free trials with abuse limits
  • Privacy, terms, refund and DMCA pages
  • SEO and llms.txt
  • Analytics

The money code is shared and tested: double charges, repeated or out-of-order payment events and failed jobs are all covered.

Four steps, one afternoon

  1. Buy the domain

    Exact-match domain on Cloudflare Registrar, at cost.

  2. Scaffold

    pnpm new-site copies the template and wires names, domain and database.

  3. Make it yours

    Write the page, pick the models, set prices in site.config.ts.

  4. Launch

    Follow the launch checklist: payments, deploy, Search Console, Bing and IndexNow.

Somebody is searching for it right now

Be the site they land on

Clone on GitHub

Ask before you clone

What is shipwords?

A free, MIT-licensed codebase for running many small AI image and video sites, one per keyword. Generation jobs, sign-in, credits, payments and free trials are written once and shared; each site has its own pages, look and domain.

How is it different from a paid SaaS boilerplate?

Most boilerplates give you one SaaS app. shipwords is built for running many AI sites at once: the shared core is fixed once for all of them, image and video generation is built in, and a real site's full source shows how to ship one.

What does it cost?

The code is free and MIT-licensed, commercial use included. You pay for the domain (about $10 a year at cost), your Cloudflare usage, Stripe or PayPal fees on each sale, and model fees on Yir per generation, which you cap per job in site.models.ts. Video sites that stitch clips together need Cloudflare's Workers Paid plan.

Do I need to know how to code?

You work in a code repo, but a coding agent does most of the writing: give it the keyword and it builds the pages, while sign-in and payments are already done. You should be comfortable running terminal commands and setting up Stripe and Cloudflare accounts.

Where does it run?

On Cloudflare. Each site is deployed on its own, with its own database, file storage and payment account, so you can launch or retire one without touching the rest.

Do I need a model API key to try it?

No. In test mode (UPSTREAM_MOCK=1, on by default) generations return sample results, so you can try sign-in, checkout and generation without any model key. Add an API key when you want real image and video models.