quest'n'click 4.5.0 · r1

Built for quest'n'click 4.5.0, revision r1. Whether it is published, and which one is current, is recorded at publication.json.

What runs where

Français · Type: explanation · Audience: author, admin · Context: hosted Studio · Status: ready · Applies from: 4.2.1

The Studio Server (hosted team Studio) · contract: experimental · verified by CI (support matrix of 4.4.0, 2026-10-23): Postgres, S3 and Keycloak in CI; Chromium and Firefox (job studio-hosted); WebKit on macOS, by hand only · automated checks: jobs studio-hosted, studio-install-smoke; CI plan studioHosted; 3 test files · people's passes: studio-hosted not run (#149), studio-collab not run (#150), studio-preview not run (#166), studio-assets-hosted not run (#167), studio-mcp-remote not run (#196), studio-oidc-generic not run (#197) · known limits: hosted-only

The team Studio, or Studio Server, puts one game's Studio online for a small team. This page shows its parts, where each runs, what each holds, and why it is cut that way.

Overview

The Studio Server puts a game's Studio online for a small team. Everyone logs in through an OpenID Connect provider (Keycloak or another), works on the same game at the same time, and sees every change as it lands. It is the work of the 4.2.x line (plan docs/dev/PLAN-4.2.1-4.2.3-STUDIO-SERVER.md).

Alone on your machine you do not need any of this: npm run studio stays as it was (see The local Studio).

What the hosted Studio brings, by version:

Deploying it is documented for Clever Cloud, from the repository or from the release archive quest-n-click-studio-server (the same server): see Clever Cloud: overview and First deployment.

The picture

browsers ─HTTPS─▶ studio (Node app, one instance) ──signed jobs──▶ studio-worker (Node app, no secrets)
CLI, MCP ─Bearer─┘   │  public_url: the Studio and /api        ▲ presigned snapshot and result
                     │  play_url:   the game (another origin)  │
                     ├──▶ PostgreSQL: journal, members, sessions, leases
                     ├──▶ Cellar (S3): the files' contents, the worker's snapshots ─┘
                     └──▶ OpenID provider: who people are (never what they may do)

In words:

Why it is cut this way

Alternatives set aside

Trade-offs

Limit · hosted-only Everything on this page is the hosted Studio (the Studio Server). The local Studio, npm run studio, has one person, no worker, no second origin and no login.

Decisions and ADRs


Edit the source of this page · Report an error