Skip to main content

Fight with your bugs, not with your buildtool

Scala CLI provides all the functionality to easily maintain single module projects like cli apps or simple microservices.

gifs/projects.gifgifs/projects.gif

Single-module projects with Scala CLI

Scala versions, dependencies and JVMs

Scala CLI is built on top of coursier
This allow us to manage Scala versions, dependencies and JVMs so you can test your code in different environments by changing single option.

Scala CLI ships with all its dependencies
No need to fluff with installing JVM or setting up PATH.

Some additional setup may be required for JS and Native

gifs/versions.gifgifs/versions.gif

Universal tool

If you want to use older version of Scala or run your code in JS or Native environments we've got you covered.

Switching between platforms or Scala versions is as easy as changing a parameter.

Some additional setup may be required for JS and Native

gifs/universal_tool.gifgifs/universal_tool.gif

We do not call Scala CLI a build tool

Scala CLI shares some similarities with build tools, but doesn't aim at supporting multi-module projects, nor to be extended via a task system known from sbt, mill or bazel.

Scala ecosystem has multiple amazing build tools, there is no need to create another multipurpose build tool.

buildtools.pngbuildtools.png