Skip to content
Latchkey

SolidStart "vinxi build" command failed in CI

SolidStart runs vinxi build under the hood. It fails when app.config.ts is invalid, an entry file (entry-server/entry-client) is missing, or a router definition throws during the build graph.

What this error means

A npm run build step calling vinxi build stops with a config or router error, or "vinxi: command not found" if vinxi was never installed.

vinxi
$ vinxi build
ERROR  Nitro build error
Error: Failed to load app config from app.config.ts
  Cannot read properties of undefined (reading 'router')

Common causes

An invalid app.config.ts

A malformed defineConfig or a bad router/server field makes vinxi fail to load the app config.

vinxi is not installed on the runner

A partial install or a missing dependency leaves no vinxi binary, so the build script exits 127.

How to fix it

Validate app.config and install cleanly

  1. Run npm ci so vinxi and SolidStart are present.
  2. Fix app.config.ts to a valid defineConfig from @solidjs/start/config.
  3. Re-run npm run build locally to confirm before pushing.
Terminal
npm ci
npm run build

Keep the SolidStart build script

Use the framework build script so vinxi runs with the right entrypoints.

package.json
{
  "scripts": { "build": "vinxi build" }
}

How to prevent it

  • Use npm ci so vinxi is always installed in CI.
  • Keep app.config.ts valid and typed with defineConfig.
  • Build locally before pushing to catch config errors.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →