Skip to content
Docs
Esc
↑↓navigate↵open⌘Jpreview
On this page

Quickstart

Install the sf CLI, sign in, publish a folder, and put it on your own domain.

You can publish a folder of static files and get a live space.fast URL in one command, then point your own domain at it. Existing Spaces on view.fast keep their URLs. See URLs and hostnames.

Before you start

You need a folder of built static files. Any framework’s output directory works (dist, out, build, public). If you only have source, sf publish can build it for you, see Frameworks and builds.

Don’t want to install anything? Open drop.fast and drag a folder, a .zip, or a single index.html onto the window — no account needed. See Drop for the full walkthrough.

Install the CLI

npm install -g spacefast
pnpm add -g spacefast
npm install -g spacefast
bun add -g spacefast
nub add -g spacefast
aube add -g spacefast

The npm package needs Node.js 20.3 or newer. On macOS or Linux you can use Homebrew instead (brew install spacefast/tap/spacefast). Standalone binaries are also available. Check the install:

sf --version

Sign in

sf login

The CLI prints a code and opens your browser. Approve the request there. The CLI receives an API key that lasts 30 days and expires after 7 days without use. Confirm with sf whoami.

You can skip this step and publish anonymously. The claim link printed after the publish lets you attach the Space to your account later. An unclaimed Space serves for 33 hours and 20 minutes after creation or the latest publish that changes files, capped at 30 days from creation.

Publish

cd my-site
sf publish ./dist

The CLI creates a Space, uploads the folder, and prints the URLs:

Published: https://quiet-harbor.space.fast

  Open          https://quiet-harbor.space.fast
  Live URL      https://quiet-harbor.space.fast
  Version URL   https://quiet-harbor--v1.space.fast
  Space         spc_…
  Version       v1 (ready)
  Files         12
  Duration      3.2s

The link between this folder and the Space is saved in .spacefast/space.json. Commit that file so the next sf publish from any machine updates the same Space.

Publish again, then roll back

If you skipped sign-in, run sf spaces claim in this directory first. It asks you to sign in and attach the Space to a team. sf versions ls and rollback by version number need a claimed Space.

Change a file and run sf publish ./dist again. Only changed files upload. You get v2, and live now points at it. The version URL for a retained v1 still serves the old build.

sf versions ls
sf rollback v1

Rolling back moves the live channel to v1. Nothing is rebuilt. sf promote v2 moves it forward again.

Add your domain

sf domains add example.com --role primary

The command prints the DNS records to create at your DNS provider: a TXT record that proves you control the name, and A records that route traffic. Adding an apex also adds www and redirects it to the apex. Check progress with:

sf domains check example.com

Once the domain is active, the Live URL switches to https://example.com. The space.fast hostname keeps working. Details, states, and troubleshooting are in Custom domains.

Next

Working with other people? If your Space is still anonymous, claim it first. Signed-in publishes already belong to a team. Personal and Go allow only the owner; adding another member needs Pro. Then invite members to publish and roll back together. Owners and admins can manage domains and invitations. Choose whether new Spaces start private to the team or public in team access settings.

Last updated on

Was this page helpful?

⌂