An Elide project uses an elide.pkl manifest. Build outputs, installed
dependencies, reports, and caches are stored under .dev.
Run project commands from the directory containing the manifest, or select a
different directory with --project PATH.
Minimal JVM project
amends "elide:project.pkl"
import "elide:Sources.pkl" as Sources
name = "hello"
jvm {
main = "sample.HelloKt"
}
sources {
["main"] = new Sources.SourceSetSpec {
paths {
"src/main/kotlin/**/*.kt"
}
}
}With src/main/kotlin/sample/Hello.kt:
package sample
fun main() {
println("Hello from Kotlin")
}Build and run it:
elide install
elide build
elide run
Use elide build --inspect to list the concrete tasks generated for the
manifest. A bare argument to elide build names a target.
Named scripts
Declare commands in the manifest:
scripts {
["greet"] = "echo hello"
}Run one by name:
elide run greetWhen the argument is not a file, Elide searches native manifest scripts, then
package.json or pyproject.toml scripts, then node_modules/.bin. Existing
files take precedence over named scripts.
Dependencies
The manifest can declare Maven and npm packages together:
dependencies {
maven {
packages {
"com.google.guava:guava:33.5.0-jre"
}
}
npm {
packages {
"pluralize@8.0.0"
}
}
}elide install # Maven
elide install --ecosystems=maven,npm # bothPyPI declarations are accepted by the manifest schema, but PyPI installation is not available in current builds.
Inspect the resolved project
elide manifest
elide project info
elide project advice
elide classpathelide manifest prints the resolved manifest as JSON. For the accepted fields,
continue with the elide.pkl Reference.