JustFlows

La documentación está sólo en inglés por ahora. El resto del sitio sigue su idioma.

Databases

PostgreSQL, MySQL 8+, and MariaDB 10.6+ — how to choose, connect, and migrate.

5 lectura mínima

You do not need to know SQL to run Justflows. Pick the database your host already offers, or use Postgres in Docker.

DatabaseWhen to use itURL scheme
PostgreSQL (default)New installs. Bundled in the default Compose file.postgres://…
MySQL 8+The host already provides MySQL.mysql://…
MariaDB 10.6+The host already provides MariaDB.mariadb://…

Docker variants

bash
# MySQL
docker compose -f docker/docker-compose.mysql.yml --env-file .env up

# MariaDB
docker compose -f docker/docker-compose.mariadb.yml --env-file .env up

Connection settings

The wizard writes DB_DRIVER, DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORD, and the matching DATABASE_URL. The server routes use the discrete values; core-backed subsystems also require DATABASE_URL. TLS is controlled by DB_SSL and DB_SSL_REJECT_UNAUTHORIZED.

Migrations

SQL lives in migrations/, with matching PostgreSQL and MySQL files (MariaDB uses the MySQL file). Migrations 0001 through 0036 are consolidated into a single 0036_baseline file per dialect. Fresh installs run the full baseline. Existing sites run only the parts they have not recorded yet, so a site on any earlier migration never replays steps it already applied. The baseline is then recorded once in _migrations, and later schema changes continue at 0037. Run them from the wizard, from Admin → Health, via POST /api/db/migrate (administrator), or justflows db migrate.

Note

The @justflows/database package is the shared client for Postgres and MySQL/MariaDB (mysql2). Schema modules live there; the running admin uses the Express SQL routes in apps/server.