Back to docs

Deployments

How auto-detection works (Nixpacks)

4 min read

Spluur inspects your repo and picks a build strategy automatically — no Dockerfile required.

Detection order

Spluur checks your repo (or your configured root directory, for monorepos) for these files, in order, and uses the first match:

  • Dockerfile — your app is built and run exactly as specified
  • go.mod — detected as a Go app
  • Cargo.toml — detected as a Rust app
  • requirements.txt, pyproject.toml, or setup.py — detected as Python
  • package.json — detected as Node.js (and your package.json scripts are read for build/start commands)
  • index.html with no other markers — treated as a static site

When detection isn't enough

If your app needs a non-standard build or start command, set them explicitly in your project's Settings rather than relying on auto-detection — explicit settings always take priority over what's auto-detected.

Didn't find what you needed? Email support