Skip to content
Functional GraphQL backend in Scala
Scala Other
  1. Scala 99.4%
  2. Other 0.6%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
benchmarks/src/main/scala/caliban Ability to wrap query execution (#73) Nov 19, 2019
core/src ZQuery: Support Request Failures (#78) Nov 20, 2019
docs [ci skip] update docs Nov 12, 2019
examples ZQuery: Support Request Failures (#78) Nov 20, 2019
http4s/src/main/scala/caliban Ability to wrap query execution (#73) Nov 19, 2019
interop/cats/src/main/scala/caliban/interop/cats Ability to wrap query execution (#73) Nov 19, 2019
project Update sbt-scalafmt to 2.2.1 (#54) Oct 23, 2019
vuepress Upgrade version in docs Nov 12, 2019
.gitignore Add more doc Oct 11, 2019
LICENSE Initial commit Sep 12, 2019 [skip-ci] Oct 14, 2019
build.sbt Update zio-interop-cats to (#75) Nov 18, 2019


Release Artifacts Build Status

Caliban is a purely functional library for creating GraphQL backends in Scala. It relies on Magnolia to automatically derives GraphQL schemas from your data types, Fastparse to parse queries and ZIO to handle various effects.

The design principles behind the library are the following:

  • pure interface: errors and effects are returned explicitly (no exceptions thrown), all returned types are referentially transparent (no Future).
  • clean separation between schema definition and implementation: schema is defined and validated at compile time using Scala standard types, resolver is a simple value provided at runtime.
  • minimal amount of boilerplate: no need to manually define a schema for every type in your API.

Consult the Documentation to learn how to use Caliban.

Any questions? Head up to the #caliban channel on ZIO Discord.

You can’t perform that action at this time.