Getting started
The path from nothing to a running Meridian site on your machine, and which page answers each step.
This section takes you from an empty machine to a site you can edit, preview and check, and explains the files you are working with.
Install
Get the engine for your bundle, a PostgreSQL 14 or later database, and decide whether you want a search service and a real mail service in development. Releases publish Linux container images of engine-dmo only, with no standalone binary download; Getting the engine says how to run it on your machine. Install.
Create a project
engine-dmo init writes a starter project; engine-dmo init --from <dir> copies an existing one you already have (the binary carries no example projects). Migrate the database, apply the schema, seed it, serve it and create the first staff user. Your first project.
Learn the layout
Every directory and file a project can hold, which ones you write and which the tooling writes. Project layout.
Work in the loop
engine-dmo dev up keeps the site running and applies safe configuration changes as you save; check, schema plan, render and guide do the rest. The development loop.
Upgrade the engine
How a new engine version reaches a project: the template contract, the project’s engine.version, and migrations as an explicit deploy step. Upgrading the engine.
The shortest path
With PostgreSQL running and the binary on your PATH:
engine-dmo init my-site
cd my-site
export DATABASE_URL='postgres://meridian:meridian@localhost:5432/meridian?sslmode=disable'
engine-dmo migrate up
engine-dmo schema apply
engine-dmo seed apply
engine-dmo user create --email you@example.org --name "Your Name"
engine-dmo dev up Open http://localhost:8080 for the site and the enrolment link user create printed for the admin at /studio.
Two things surprise people on the first run: check warns that the starter’s base.html has no head() and still ends 0 errors, 0 warnings, because template warnings are not counted (Replace the starter layout); and once your engine.yaml names a secret such as ${SIGNING_KEY}, it must be set on your machine too (Variables you must set).
engine-cms or engine-dmo
Every command in this section is the same on both binaries. Use engine-cms in place of engine-dmo if you run the CMS bundle.
Once the site runs, read Concepts before you model content: sites, locales and stable ids shape every file you will write.
Meridian
What Meridian is, what the engine-cms and engine-dmo bundles each include, how this handbook is organised and where to start.
Install
What Meridian needs to run (the engine binary or container image, PostgreSQL 14 or later, and optional search and mail services) and how to check an installation.