Supported Runtimes
When using the Nixpacks build mode, Apply.Build automatically detects your application's runtime based on files in your repository. If you use the Dockerfile build mode, you have full control over the runtime — see Deployments for details.
Languages and runtimes
| Runtime | Detected by | Versions |
|---|---|---|
| Clojure | project.clj or build.clj | JDK 8 (default), 11, latest |
| COBOL | .cbl files | Latest |
| Crystal | shard.yml | Latest |
| C#/.NET | *.csproj | Via global.json or NIXPACKS_CSHARP_SDK_VERSION |
| Dart | pubspec.yaml | Latest |
| Deno | deno.json or deno.jsonc | Latest |
| Elixir | mix.exs | Latest (default), 1.17, 1.16, 1.15, 1.14, 1.13, 1.12, 1.11, 1.10, 1.9 |
| F# | *.fsproj | Via global.json or NIXPACKS_CSHARP_SDK_VERSION |
| Gleam | gleam.toml and manifest.toml | From manifest.toml |
| Go | main.go | 1.18–1.23 (default 1.22) |
| Haskell | package.yaml and .hs files | Via Stack |
| Java | pom.xml or gradlew | JDK 8, 11, 17 (default), 19, 20, 21 |
| Lunatic | Cargo.toml with runner = "lunatic" | Latest stable |
| Node.js | package.json | 16, 18 (default), 20, 22, 23 |
| PHP | composer.json or index.php | 8.1, 8.2 (default), 8.3, 8.4 |
| Python | main.py, requirements.txt, pyproject.toml, or Pipfile | 2.7, 3.8–3.13 (default 3.11) |
| Ruby | Gemfile | Via .ruby-version or Gemfile |
| Rust | Cargo.toml | Latest stable (default), any via rust-overlay |
| Scala | build.sbt | JDK 8, 11, 17 (default), 19, 20, 21 |
| Swift | Package.swift | 3.1–5.8 (default 5.8) |
| Zig | build.zig | Latest |
Static sites
Static files are served automatically when any of the following are found: a Staticfile, ./public, ./dist, ./index, or ./index.html.
Specifying a version
You can pin a runtime version using standard version files:
- Node.js —
.node-version,.nvmrc, orenginesfield inpackage.json - Python —
.python-version,runtime.txt, or.tool-versions - Go —
godirective ingo.mod - Ruby —
.ruby-versionorGemfile - Swift —
.swift-versionorswift-tools-versioninPackage.swift - Elixir —
.elixir-versionormix.exs
See the Nixpacks docs for full details on each provider.