Skip to content

Encore

Encore is the reference scaffold for a Coral module: TanStack Start, Tailwind v4, Biome and release automation, wired together and ready to build on. It is named for a planned feature — moderated guest music requests against a Jellyfin music library — that does not exist yet.

As a starting point. Encore tracks the current template, so it is a live example of how a Coral module is laid out — routing, the Node server entrypoint, the Docker build, and the release workflow.

To start your own module from the same base, use the CLI rather than forking Encore:

Terminal window
pnpm create coral@latest

See the create-coral CLI guide and Project templates.

  • Node.js 24 LTS. Node 22.5 is the hard floor — the template uses the built-in node:sqlite module, which does not exist on Node 18 or 20.
  • pnpm
Terminal window
docker run -p 3000:3000 getcoral/encore:latest

Encore serves on port 3000 and exposes /healthz.

The entire environment surface, verified against encore/.env.example and encore/src:

VariableRequiredDefaultPurpose
HOSTNo0.0.0.0Interface the server binds to
PORTNo3000Port the server listens on

There are no JELLYFIN_* variables. Nothing in Encore reads them, and setting them has no effect.

Terminal window
git clone https://github.com/Get-Coral/encore.git
cd encore
pnpm install
pnpm dev
ScriptPurpose
pnpm devDev server on :3000
pnpm buildProduction build
pnpm startRun the production server (node server.mjs)
pnpm typecheckTypeScript check
pnpm checkBiome lint + format check
pnpm testVitest