Projects

Our projects cover a wide range of domains, from general functional programming to tooling.

argonaut-shapeless

Automatic derivation for argonaut

jvm

Typelevel Affiliate Project

banana-rdf

RDF, SPARQL and Linked Data technologies

js / jvm

Typelevel Affiliate Project

calico

Pure, reactive UI library for building web applications with Cats Effect + FS2

js

Typelevel Affiliate Project

cats-scalatest

Scalatest bindings for Cats.

js / jvm

Typelevel Affiliate Project

cats-stm

A STM implementation for Cats Effect

js / jvm / native

Typelevel Affiliate Project

Ciris

Functional Configurations for Scala

js / jvm / native

Typelevel Affiliate Project

coulomb

A statically typed unit analysis library for Scala

js / jvm / native

Typelevel Affiliate Project

cron4s

Cross-platform CRON expression parsing for Scala

js / jvm

Typelevel Affiliate Project

decline

A composable command-line parser for Scala.

js / jvm / native

Typelevel Affiliate Project

doobie

A pure functional JDBC layer for Scala. It is not an ORM, nor is it a relational algebra; it just provides a principled way to construct programs (and higher-level libraries) that use JDBC.

jvm

Typelevel Affiliate Project

edomata

Event-driven automata for Scala, Scala.js and scala native. This library provides purely functional state machines that can be used to create event sourced and/or CQRS style applications. It also includes production ready backends.

js / jvm / native

Typelevel Affiliate Project

eff

Extensible effects are an alternative to monad transformers for computing with effects in a functional way. This library is based on the “free-er” monad and an “open union” of effects described by Oleg Kiselyov in “Freer monads, more extensible effects”

js / jvm / native

Typelevel Affiliate Project

endless4s

Sharded and event-sourced entities using tagless-final algebras

jvm

Typelevel Affiliate Project

Extruder

Populate case classes from any configuration source

jvm

Typelevel Affiliate Project

ff4s

A purely functional web frontend framework for Scala.js.

js

Typelevel Affiliate Project

Fetch

Library built on top of Cats that provides efficient data access from heterogeneous dataurces

js / jvm

Typelevel Affiliate Project

Finch

Purely functional basic blocks atop of Finagle for building composable HTTP APIs

jvm

Typelevel Affiliate Project

fs2-aes

Micro library providing AES encryption/decryption of fs2.Stream[F, Byte].

jvm

Typelevel Affiliate Project

fs2-compress

Compression Algorithms for Fs2

jvm

Typelevel Affiliate Project

fs2-data

Parse and transform data (CBOR, CSV, JSON, XML) in a streaming manner

js / jvm / native

Typelevel Affiliate Project

fs2-dom

Idiomatic Cats Effect + FS2 integrations for Web APIs

js

Typelevel Affiliate Project

Hammock

Purely functional HTTP client

jvm

Typelevel Affiliate Project

http4s

A typeful, purely functional HTTP library for client and server applications

js / jvm / native

Typelevel Affiliate Project

imp

Summoning implicit values

js / jvm

Typelevel Affiliate Project

LDBC

Pure functional JDBC layer with Cats Effect 3 and Scala 3

jvm

Typelevel Affiliate Project

Lepus

Purely functional, non-blocking RabbitMQ client for scala, scala js and scala native built on top of fs2.

js / jvm / native

Typelevel Affiliate Project

Libra

Compile time dimensional analysis for any problem domain

js / jvm

Typelevel Affiliate Project

Monix

High-performance library for composing asynchronous, event-based programs, exposing a Reactive Streams implementation along with primitives for dealing with concurrency and side-effects.

js / jvm

Typelevel Affiliate Project

Monocle

Optics library offering a simple yet powerful API to access and transform immutable data

js / jvm / native

Typelevel Affiliate Project

Outwatch

The Functional and Reactive Web-Frontend Library for Scala.js

js

Typelevel Affiliate Project

parsley-cats

The parsley-cats library exposes Cats instances for Parsley parsing library.

js / jvm / native

Typelevel Affiliate Project

PureConfig

A boilerplate-free library for loading configuration files

jvm

Typelevel Affiliate Project

refined

Tools for refining types with type-level predicates which constrain the set of values described by the refined type, for example restricting to positive or negative numbers.

js / jvm / native

Typelevel Affiliate Project

scalacheck-shapeless

Automatic derivation for ScalaCheck

js / jvm / native

Typelevel Affiliate Project

Scala Exercises

Platform and framework for Scala devs to learn about Scala libraries

js / jvm

Typelevel Affiliate Project

scala-steward

A robot that helps keeping Scala projects up-to-date

jvm

Typelevel Affiliate Project

scodec

scodec is a combinator library for working with binary data. It focuses on contract-first and pure functional encoding and decoding of binary data and provides integration with shapeless.

js / jvm / native

Typelevel Affiliate Project

Scoverage

Code coverage tool for Scala

js / jvm / native

Typelevel Affiliate Project

Shapeless

Shapeless is a generic programming library. Starting with implementations of Scrap your boilerplate and higher rank polymorphism in Scala, it quickly grew to provide advanced abstract tools like heterogenous lists and automatic instance derivation for type classes.

js / jvm / native

Typelevel Affiliate Project

singleton-ops

Operations for primitive and String singleton types

js / jvm

Typelevel Affiliate Project

sonic

Property-based testing with integrated shrinking

jvm

Typelevel Affiliate Project

specs2

specs2 is a library for writing executable software specifications, aiming for conciseness, readability and extensibility.

js / jvm / native

Typelevel Affiliate Project

TwoTails

A compiler plugin adding support for mutual tail recursion

jvm

Typelevel Affiliate Project

uniform-scala

Functional user journeys

js / jvm

Typelevel Affiliate Project

upperbound

A purely functional, interval based rate limiter

js / jvm / native

Typelevel Affiliate Project

Submitting

Are you interested in submitting your library to the Typelevel Ecosystem?

Open a ticket!