/sbt-typelevel

SBT plugin which understands binary compatibility

Primary LanguageScalaApache License 2.0Apache-2.0

sbt-typelevel sbt-typelevel Scala version support Discord

sbt-typelevel configures sbt for developing, testing, cross-building, publishing, and documenting your Scala library on GitHub, with a focus on semantic versioning and binary compatibility. It is a collection of plugins that work well individually and even better together.

Features

  • Auto-generated GitHub actions workflows, parallelized on Scala version and platform (JVM, JS, Native)
  • git-based dynamic versioning
  • Binary-compatibility checking with MiMa, following early semantic versioning
  • CI publishing of releases and snapshots to Sonatype/Maven
  • CI deployed GitHub pages websites generated with mdoc and Laika
  • Auto-populated settings for various boilerplate (SCM info, API doc urls, Scala.js sourcemaps, etc.)

Get Started

sbt new typelevel/typelevel.g8

Visit https://typelevel.org/sbt-typelevel for a quick start example and detailed documentation. Find the Giter8 template companion project at typelevel.g8.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

110416
110416

πŸ”¬
Akinmolayan Olushola
Akinmolayan Olushola

πŸ’»
Amund Murstad
Amund Murstad

πŸ’»
Andrew Valencik
Andrew Valencik

πŸ’» πŸ“– πŸ”§
Antonio Gelameris
Antonio Gelameris

πŸ’» πŸ‘€
Arman Bilge
Arman Bilge

πŸ’» πŸ‘€ πŸ“–
Ben Plommer
Ben Plommer

πŸ’»
Brian P. Holt
Brian P. Holt

πŸ’» πŸ€” πŸ”§
Christopher Davenport
Christopher Davenport

πŸ’»
Daniel Esik
Daniel Esik

πŸ’» πŸ“–
Daniel Spiewak
Daniel Spiewak

πŸ’»
Daniel Urban
Daniel Urban

πŸ›
Darren Gibson
Darren Gibson

πŸ’»
David Gregory
David Gregory

πŸ’» πŸ‘€
David Strawn
David Strawn

πŸ“–
Eric Meisel
Eric Meisel

πŸ› πŸ’»
Jakub KozΕ‚owski
Jakub KozΕ‚owski

πŸ’»
Jamie Willis
Jamie Willis

πŸ’» 🎨
Jens Halm
Jens Halm

πŸ’» πŸ“– πŸ‘€
Justin Reardon
Justin Reardon

πŸ”¬
Lucas Satabin
Lucas Satabin

πŸ› πŸ’»
Maksym Ochenashko
Maksym Ochenashko

πŸ’»
Marco ZΓΌhlke
Marco ZΓΌhlke

πŸ’» πŸ“– πŸ‘€
Michel Davit
Michel Davit

πŸ’»
PJ Fanning
PJ Fanning

πŸ’»
Ross A. Baker
Ross A. Baker

πŸ’» πŸ€” πŸ‘€
Sam Pillsworth
Sam Pillsworth

πŸ€” πŸ‘€
Sergey Torgashov
Sergey Torgashov

πŸ’» πŸ‘€
Simon Parten
Simon Parten

πŸ“–
Vasil Vasilev
Vasil Vasilev

πŸ’» πŸ€”
zetashift
zetashift

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!