Upload studio

Print the photo or make the artwork.

Use this page when the buyer is ready to act. The form stores the original photo, creates optional art previews, then passes the selected print file into checkout.

Choose the print artwork

Original photo printing or a limited watermarked art preview.

Original print
Uploaded railway artwork preview

No upload selected

Choose a file before selecting artwork.

Artwork
Product
Art style

Art previews are limited per upload.

Waiting for a photo.

Before checkout

Proof quality checks.

  • Train remains recognisable after proofing.
  • No invented operator marks or protected route branding.
  • Print file URL is reachable from a public HTTPS origin.
  • Gelato live order waits for a complete Stripe shipping address.
  • Customer uploads and order metadata stay in Cloudflare R2 and KV.

Flow

Every step is wired for live keys.

  1. 01

    Upload the sighting

    Add a JPG, PNG, or WebP image you own. R2 stores the original so proofing and fulfilment can use the same source.

  2. 02

    Choose the product

    Pick the product, size, and quantity from Gelato-ready variants mapped to product UID environment variables.

  3. 03

    Create a proof

    Print the original photo, or use OpenRouter to create a capped watermarked art preview before checkout.

  4. 04

    Checkout and fulfil

    Stripe collects payment and shipping. The paid webhook submits the print order to Gelato.