Development

Prerequisites

This page lists what you need on your machine before you follow Local development. Product installation for running TurboPanel in production is covered under Installation.

Supported environments

macOS and Linux are the environments TurboPanel development is written for and routinely tested on.

Windows (including WSL) is not officially supported. Some contributors use WSL successfully, but your mileage may vary; if something fails on Windows, fixups are welcome but the team may not be able to reproduce native Windows issues.

Required tooling

Node.js

Node.js 24.x or newer is required. The instance, UI, and website repos each declare their own packageManager field for pnpm.

pnpm

pnpm 11.x or newer. Using Corepack is recommended so your pnpm version matches each repo.

Docker

Docker (Docker Engine or Docker Desktop) is required. The daemon runs Postgres in Docker; production and co-located dev paths also rely on Docker.

Git + SSH

Platform repos clone via SSH (git@github.com:turbopanel/...). Ensure your GitHub SSH key is loaded before running ./console.

openssl

openssl is required for TLS certificate generation (scripts/generate-self-signed-cert.mjs).

Optional (Workers instance runtime)

Local dev defaults to the Deno path (turbopanel-instance.service on a Unix socket). To run the Cloudflare Workers path instead, switch to Workers mode in the Instance area of ./console and run pnpm dev in the instance checkout. Workers mode requires Node.js and pnpm (see above).

ToolPurposeInstall
DenoConsole + instance runtime (installed by ./console)deno.com — or let orchestration install the pinned version under /opt/turbopanel/vendor/deno/<version>/deno (no v prefix)

Co-located dev on a Debian VM uses the dev console (./consoleStart dev stack) with Deno + systemd.

Next steps

When the above is in place, continue with Local development for bootstrap, ports, and day-to-day tasks.

Edit on GitHub

Last updated on

On this page