runlot

GUIDE / 01

Setup and first deploy

Go from an empty folder to a public deploy URL with three commands.

Install the CLI

Terminal
npm i -g runlot
runlot login

Create a project

Terminal
npm create runlot@latest my-app
cd my-app
Files in the template

The template contains only runlot.json, src/index.ts, public/hello.txt, .gitignore, and the directories you need. It stays minimal so you can see the whole deploy setup — runlot.json, the worker entry point, and the static assets directory — at a glance.

Deploy

The command builds a bundle, uploads it, and serves the new version. If the project doesn't exist yet it is created automatically, so there's nothing to set up before your first deploy.

Terminal
runlot deploy
Example deploy URL

When the deploy finishes, you'll see a URL like this.

my-app.me.runlot.app
<project>
project
<organization>
organization
.runlot.app

The format is <project>.<organization>.runlot.app. See Deploy URL for the naming rules.

Check in your browser

Open the URL printed by your deploy and check the response from the template you chose.

Turn on the database

Add one line to runlot.json and deploy. There is no command to turn it on. The deploy reads the declaration and creates what is missing.

runlot.json
{
  "name": "my-app",
  "main": "src/index.ts",
  "database": true
}
Terminal
runlot deploy

Login and file storage go in the same place. Declare only the ones you need.

runlot.json
{ "database": true, "auth": true, "storage": true }

App auth requires a database, so "auth": true on its own creates the database as well. The deploy output says what it created, and it never creates something that already exists.

psql connection details
runlot pg connect

On this page