Sandboxes

Overview

What runs inside a sandbox, and how each project stays isolated from the others.

A sandbox is the isolated environment that backs one project. It is created the first time you open the project and holds everything that project needs to run.

What runs inside

ComponentRole
Your applicationStarted from the dev script your project declares
Code editorFull editor on the same files the canvas renders
TerminalShell access inside the environment
Preview endpointA private HTTPS URL serving your running application

Isolation

Each sandbox runs in its own environment with a dedicated kernel and its own network namespace. Projects cannot see each other's processes, files, or network traffic, and a sandbox cannot reach the platform's internal services — only the public internet and the endpoints your application calls.

Your project's files live on persistent network storage attached to the environment. They are not stored on the machine that happens to run your sandbox, which is what lets a sandbox be stopped and restarted elsewhere without losing anything.

Declaring what to run

A project describes its services in an evrygo.json file at its root:

{
  "services": [
    { "name": "web", "command": "npm run dev", "port": 3000, "primary": true }
  ]
}
  • command runs from the project root.
  • port is the port your application listens on. It is mapped to your preview URL automatically.
  • primary marks the service the canvas previews when several are declared.

Changes to this file are picked up without restarting the sandbox.

Resource limits

Resources are allocated per plan. Within a sandbox you get a fixed amount of memory, vCPU and disk; exceeding the disk quota causes writes to fail rather than silently dropping data. See your plan for the exact figures.

On this page