QODDI DOCUMENTATION
Buildpacks
Last updated
Qoddi builds source repositories with language buildpacks. It follows Cloud Native Buildpacks and Heroku buildpack requirements, with Qoddi-specific integration for deployment and networking.
Buildpack configuration depends on the implementation and release. Classic Heroku buildpacks, Heroku Cloud Native Buildpacks, and Paketo Community buildpacks do not share every flag or lifecycle hook. Check the build log before using implementation-specific options.
Language buildpacks
| Integration | Repository configuration |
|---|---|
| Node.js | package.json and one npm, Yarn, or pnpm lockfile |
| PHP | composer.json and composer.lock when requirements are declared |
| Python | .python-version and dependency files for pip, uv, or Poetry |
| Ruby | Gemfile and Gemfile.lock with Ruby and Bundler versions |
| Go | go.mod and go.sum when generated |
| Rust | Cargo.toml, Cargo.lock, and an explicit Rust toolchain |
| Java / Maven | pom.xml, Maven Wrapper, and system.properties |
| Gradle / JVM | Complete Gradle Wrapper and build.gradle or build.gradle.kts |
| Django | Python configuration, Django dependencies, and a production server |
| Laravel | PHP/Composer configuration and the public/ document root |
Define a Procfile to launch the packaged app and bind its HTTP server to Qoddi’s configured port. Runtime requirements, maintenance status, and supported package managers are in each guide.
Additional JVM languages and frameworks
| Integration | Build and version configuration |
|---|---|
| Clojure | The Heroku Leiningen buildpack detects project.clj. Declare Clojure dependencies there, package an executable application, and select the JDK in system.properties. |
| Scala / sbt | Use build.sbt and project/build.properties with sbt.version. Heroku currently supports sbt 1.x and 2.x (2.0.1+); sbt 0.x is unsupported. Pin the Scala language version in the project. |
| Play | Use the Scala/sbt integration and the framework’s supported JDK and sbt combination. Play supplies staging through sbt-native-packager. |
| Grails / other JVM apps | Select the Java or Gradle integration matching the project’s build files. The framework version determines its JDK and build-tool requirements; historical Grails 3.x or Play 2.x examples are not a current support guarantee. |
Sources: Clojure buildpack requirements, Scala and sbt support, and JDK selection. An upstream runtime or framework release is available on Qoddi only when the selected builder supplies the necessary integration.
Multiple buildpacks and containers
For repositories containing multiple languages, configure multiple buildpacks. For a custom runtime or dependency combination, use a Docker image. Static sites can use the static asset integration.
Learn more about Cloud Native Buildpacks and Heroku buildpacks.
Runtime references checked November 2, 2026. Available binaries and defaults depend on the selected Qoddi builder and stack; confirm the resolved version in the build log.