Community Plugins

Community Plugins

sbt Organization

The sbt organization is available for use by any sbt plugin. Developers who contribute their plugins into the community organization will still retain control over their repository and its access. The goal of the sbt organization is to organize sbt software into one central location.

A side benefit to using the sbt organization for projects is that you can use gh-pages to host websites in the http://scala-sbt.org domain.

Community Ivy Repository

Typesafe, Inc. has provided a freely available Ivy Repository for sbt projects to use. If you would like to publish your project to this Ivy repository, first contact sbt-repo-admins and request privileges (we have to verify code ownership, rights to publish, etc.). After which, you can deploy your plugins using the following configuration:

publishTo := Some(Resolver.url("sbt-plugin-releases", new URL("http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/"))(Resolver.ivyStylePatterns))

publishMavenStyle := false

You'll also need to add your credentials somewhere. For example, you might use a ~/.sbt/sbtpluginpublish.sbt file:

    credentials += Credentials("Artifactory Realm",
"repo.scala-sbt.org", "@user name@", "@my encrypted password@")

Where @my encrypted password@ is actually obtained using the following instructions.

Note: Your code must abide by the repository polices.

To automatically deploy snapshot/release versions of your plugin use the following configuration:

publishTo <<= (version) { version: String =>
   val scalasbt = "http://repo.scala-sbt.org/scalasbt/"
   val (name, url) = if (version.contains("-SNAPSHOT"))
     ("sbt-plugin-snapshots", scalasbt+"sbt-plugin-snapshots")
   else
     ("sbt-plugin-releases", scalasbt+"sbt-plugin-releases")
   Some(Resolver.url(name, new URL(url))(Resolver.ivyStylePatterns))
}

Note: ivy repositories currently don't support Maven-style snapshots.

Available Plugins

Please feel free to submit a pull request that adds your plugin to the list.

Plugins for IDEs:

Static Code Analysis plugins

One jar plugins

LWJGL (Light Weight Java Game Library) Plugin

Release plugins

System plugins

Code generator plugins

Database plugins

Documentation plugins

Utility plugins

Build interoperability plugins

Plugin bundles