Set up a local development environment

Choose one installation route, start Zotonic, create a site, and make your first visible change.

Start here to build Zotonic, open your own site, and change a page. You do not need to learn Erlang before trying the first template edit.

1. Choose an installation route

For a first try, use Install with Docker or Podman. It supplies Erlang/OTP 28, build tools, and PostgreSQL. You only install Git and a container runtime on your computer.

Prefer running everything directly on your computer? Follow Install on macOS or Linux. Already use Nix? Follow Use the Nix development shell. Choose one route; you do not need all three.

2. Get the source

In a terminal, move to the directory where you keep projects, then run:

git clone https://github.com/zotonic/zotonic.git
cd zotonic

This gets the development branch used by this guide. If you need a released version, get its source from the Zotonic releases and follow instructions for that release. Do not mix an existing native build with a container build; use separate checkouts.

3. Install and start

Open your chosen installation page above and follow it until bin/zotonic status reports a running node. Container users run Zotonic commands inside the container shell; native users run them in this checkout.

4. Make it yours

Create your first site, log in to its admin, then change its home-page template. The example is a small blog named garden.

You are done with the first run when the site opens in your browser and your own text appears after a template edit. Continue with your first dynamic page when you want to add a new URL.