malliina / sbt-utils

SBT plugin collection

Version Matrix

Build Status


A repository of sbt plugins that I find useful.

  • sbt-utils-maven for publishing GitHub projects to Maven Central
  • sbt-utils-bintray for publishing to Bintray
  • sbt-nodejs for working with Scala and Node.js projects

The Maven Central plugin populates the required POM XML and delegates publishing to sbt-sonatype. The user must provide a couple of values to correctly populate the POM XML, see Usage.


To publish to Maven Central:

addSbtPlugin("com.malliina" % "sbt-utils-maven" % "1.0.0")

To publish to Bintray:

addSbtPlugin("com.malliina" % "sbt-utils-bintray" % "1.0.0")

The Node.js plugin:

addSbtPlugin("com.malliina" % "sbt-nodejs" % "1.0.0")


Use either Maven Central or Bintray depending on where you want to publish your artifacts.

Maven Central

To publish to Maven Central, enable the MavenCentralPlugin SBT autoplugin for your project:

val myLibrary = Project("my-library", file("."))

Define the following SBT settings in order to populate the Maven POM XML correctly:

gitUserName := "My GitHub Username Here",
developerName := "My Name Here"

To publish the artifacts, run:

sbt release

You need credentials to publish.

The generated POM XML declares a license of


Enable the BintrayReleasePlugin autoplugin:

val myLibrary = Project("my-library", file("."))

To publish the artifacts, run:

sbt release


Plugin NodeJsPlugin lets you run npm commands from the sbt shell.

val myApp ="."))

Then run e.g.

front ncu