
Functional programming toolkit aimed at taming the complexity of Tagless Final approach.
| CI | Release | Chat |
|---|---|---|
To use the whole utils pack just add to your build.sbt:
libraryDependencies += "ru.tinkoff" %% "tofu" % "latest version in badge"
Of course, you can also specify an exact list of tofu modules that you want to add to your dependencies (used in place
of "tofu"):
tofu-core for core utilstofu-core-cats-mtl for interop between tofu-core and Cats MTLtofu-core-higher-kind for higher kinded utilstofu-concurrent for concurrent utilstofu-config for config utilstofu-data for data utilstofu-derivation for derivation utils and derevo annotationstofu-doobie for Doobie utilstofu-enums for Enumeratum utilstofu-env for Env (a variation of a Reader Monad based on Monix Task)tofu-fs2-interop for interop with fs2tofu-streams for streaming utilstofu-logging for the whole set of logging utils (derivation, layout, structured, util, interop)tofu-logging-derivation for logging derivation onlytofu-logging-layout for logging layout onlytofu-logging-structured for logging structured onlytofu-logging-util for logging util onlytofu-logging-refined for interop between tofu-logging and Refined tofu-logging-shapeless for interop between tofu-logging and Shapeless tagtofu-memo for caching utilstofu-observable for monix.reactive.Observable utilstofu-optics-core for optics core (Optics typeclasses)tofu-optics-interop for optics interop with Monocletofu-optics-macro for macro optics generatorstofu-zio-interop for interop with ZIO (core, logging)tofu-zio-core for ZIO instances onlytofu-zio-logging for ZIO logging only
Proud user of ToFu? Feel free to add your company!
Please note we use the following labels for automated release descriptions:
chore if your PR does not change any types and runtime semanticsfix if your PR merely fixes incorrect behavior We have an automated check for style conformance. You can run sbt checkfmt before PR.
If you have any trouble during this check, just run sbt fmt and commit again.
Copyright the maintainers, 2020
Logos made with love by @impurepics