fargone / docs / apps

Apps are the core unit on Fargone. Each app gets its own subdomain, container, and deployment history.

Create an app

CLI

fargone apps create my-app
fargone apps create my-app --github https://github.com/you/repo
fargone apps create my-app --github https://github.com/you/repo --branch develop
fargone apps create my-app --github https://github.com/you/repo --auto-deploy
fargone apps create my-app --description "my side project"

Web

Go to Dashboard > Apps > New App. Upload a zip or connect a GitHub repo.

The app name is slugified automatically (lowercase, hyphens, max 40 chars). The slug must be unique across the platform.

Deploy

From a local directory or zip

fargone deploy my-app ./my-project --watch

This zips the directory (or accepts a .zip file directly), uploads it, and triggers a build. Use --watch to stream build logs.

From GitHub

fargone apps deploy my-app --watch

This re-clones the repo at the latest commit and rebuilds. If auto-deploy is enabled, every push triggers this automatically.

Via the web

Open the app detail page and click Deploy. You can upload a zip or trigger a redeploy from the stored source.

Deployment lifecycle

A deployment goes through these stages:

QUEUED -> BUILDING -> DEPLOYING -> RUNNING

If any step fails, the status becomes FAILED and the error is stored.

The previous container is kept running until the new one is healthy, then cleaned up automatically.

Manage apps

fargone apps                          # list all apps
fargone apps info my-app              # details, env vars, databases, deployments
fargone apps stop my-app              # stop the container
fargone apps restart my-app           # stop then start
fargone apps delete my-app            # delete everything

Logs

fargone logs my-app                   # runtime logs (last 200 lines)
fargone logs my-app --follow          # stream new lines every 1.5s
fargone logs my-app --build           # build logs
fargone logs my-app --follow --build  # stream build logs

Runtime logs are tailed from the running container. Build logs are captured during the Nixpacks build process. Both are stored server-side (max 2000 lines per kind per app).

Runtimes

Nixpacks auto-detects your runtime from the files in your project:

Runtime Detection
Node.js / Next.js package.json
Python requirements.txt, pyproject.toml
Go go.mod
Rust Cargo.toml
Ruby Gemfile
PHP composer.json
Deno deno.json
Bun bun.lockb, bunfig.toml
Static index.html (no build step)

No Dockerfile is required. If you need custom build steps, Nixpacks supports configuration via nixpacks.toml in your project root.

App URL

Every app is assigned a subdomain:

https://{slug}.{FARGONE_DOMAIN}

For example, an app with slug my-app on platform.fargone.sh is live at https://my-app.platform.fargone.sh.

The internal port defaults to 3000 and is configurable per app.