ProductTemplatesDocsBlogChangelogPricingShip Week Log In Deploy a site

The product

The deploy moment,
up close.

Drag a folder. Watch it build. Click a live URL. Everything Triangle does bends toward making that loop feel instant.

Three doors, one destination

Every path lands on the same live URL.

Drop, import, or start from a template — they all converge on the same build-log theater and success beat.

01 Live

Drop

Drag a folder, a single HTML file, or a .zip anywhere on the page. We auto-detect the framework and serve static output as-is. Each drop creates a new deployment.

Open the dashboard →
02 Demo

Import

Point at a repo, and the framework preset is auto-detected with Build, Install, and Output fields pre-filled and editable. Shown in demo mode in this reference build.

See how it works →
03 Live

Starters

One-click deploy a real, working starter into your own space — you own the code from second one, and every deploy advertises the platform.

Browse the gallery →

The build log is the show

A live terminal, tail pinned.

The log streams in monospace, sectioned by phase — clone, install, build, upload — with per-line timestamps and the tail always pinned to the newest line.

  • Any value 32 characters or longer that hits the log is masked as [REDACTED] — automatically.
  • Shallow git clone --depth=10 keeps starts fast.
  • A 1 GB build cache is retained ~1 month for quick rebuilds.
  • Failures land on diagnostic logs, never a dead end.
my-site · building
07:44:20 ▲ Deploying my-site to production
07:44:20 Cloning upload (9 files, 118 KB)
07:44:21 Detected framework: Static
07:44:21 No build step required — serving as-is
07:44:21 API_KEY: value ≥32 chars → [REDACTED]
07:44:21 Uploading build outputs [9 files]
07:44:22 Assigning production domain
07:44:22 Deployment completed ✓
Production DeploymentRolled back
Deployment URL
my-site-keen0xf.ship.now
Automatic production assignment is off until you undo.
Undo RollbackVisit ↗

Instant rollback

Roll back without rebuilding.

The production tile is your state anchor. Rolling back is an alias reassignment — production points at a previous deployment instantly, with no rebuild and env vars untouched.

The rolled-back state is sticky: automatic production assignment turns off so a new push can't silently overwrite it, and an Undo Rollback button appears until you're ready. Hobby rolls back to the previous deploy; Pro to any deployment in history.

Deploy history

Every build kept, newest first, with commit hash and status. Promote any of them to production from the ⋮ menu.

Analytics

Visitors, top pages, and referrers render in the dashboard with a 7/30/90-day range — privacy-first and cookie-free.

Custom domains

Point your own domain at any deployment. Free on every plan, including Hobby.

The stop-line: static only

Triangle serves HTML, CSS, JS, and assets from the edge — no serverless functions, no server runtime. That's a deliberate boundary, not a gap: it's what makes every deploy fast, cache-able, and impossible to cold-start. If your project needs server code, we'll tell you at deploy time rather than pretend.

See the deploy moment for yourself.

Drag a folder onto the dashboard and watch the whole loop — log, success beat, live URL — in one go.

Open the dashboard Read the docs
The Changelog Digest

One email. Everything we shipped this week.

Product drops, ship-week reveals, and the occasional deep dive on edge deploys. No noise.