Start · 0.8.1

Local development: starting and updating the application

Run Go and React locally, PostgreSQL in Docker, and apply model changes through Generator UI.

On this page

For local development, the Go backend and React interface run on your machine; PostgreSQL runs in Docker. Edit the model in Generator UI and records in the generated admin.

In the commands below, ENV_NAME is a shell variable containing the profile name from Deployment environments, not the project name or preset. At the start of each block, replace production, local, or dev with your profile name, for example ENV_NAME=test. Commands use "$ENV_NAME" so --env and its confirmation receive the same value. Set the variable again when switching machines or opening a new terminal.

Working in the interface

  1. Open Content and change an entity, field or relationship.
  2. Save with Finish and go to Generate.
  3. Click Preview changes, inspect the changes and Generate.
  4. After restarting the application, open the admin address printed in the terminal and check the changed form on a record.

Generator UI does not start Go/React or manage Docker. Prepare the environment with the commands below, then return to model configuration in the browser.

Terminal startup and environment maintenance

Open a terminal in the generated project root and run:

make dev

Install Go, Node/npm and Make and start Docker first. The command prepares the local environment, starts PostgreSQL and applies migrations. If no administrator exists, it offers to create a superadmin account. Password input is hidden; there is no default password. API and admin then start, with their logs in this terminal. Addresses are printed in the output. Defaults are API http://127.0.0.1:8081 and interface http://127.0.0.1:5173.

If generated deployment files exist, the common controller can start the same environment. First create and check the development configuration:

ENV_NAME=dev # replace with your exact profile name in Deployment environments
mkdir -p deploy/environments
jq --arg root "$(pwd -P)/deploy/.state/dev" \
  '.root=$root | .backup.root=($root+"/backups")' \
  deploy/generated/examples/dev-local.json > deploy/environments/dev.json
bash ./deploy/control check --env "$ENV_NAME"
bash ./deploy/control up --env "$ENV_NAME"

In this mode, up runs make dev. Run the following in another terminal: the first command displays PostgreSQL logs; the second stops the environment.

ENV_NAME=dev # replace with your exact profile name in Deployment environments
bash ./deploy/control logs --env "$ENV_NAME" --service postgres
bash ./deploy/control down --env "$ENV_NAME"

Go and React logs remain in the startup terminal. dev-local does not accept --json or confirmation arguments for server operations. The environment JSON also does not replace .env or Make parameters. Stopping preserves PostgreSQL data.

After changing the model

Stop the application processes, Generate, then run make dev again. Do not delete the database volume to apply migrations. If you have changed environment settings, check them before startup: preparation must not silently replace existing configuration.

Related guides

Continue model work with UI interface. Editor startup parameters are covered in CLI: project preparation. For another application layout, open environment selection.