Awesome
Google4s
This project aims to provide safe, composable and easy to use clients for Google Cloud Platform Services written in functional style Scala.
Currently supported clients are
The client implementations are using Google's Java clients underneath however, the Java code is mostly generated so it's not really fun to use it.
- Omniversal nested builder pattern
- No or limited concurrency
- Uncomposable patterns
google4s
solves this problems by replacing the builder pattern with simple
method calls with strong data types. Effect handling and concurrency can be
done in an arbitary kind F[_]
you just have to provide a natural transformation
(() => ?) ~> F
. See Llift
for deails.
Usage
The clients are structured and released as separate modules.
Add the latest version to your project
Latest Stable
libraryDependencies += "co.upvest.google4s" %% "google4s-..." % "0.0.2"
Latest Snapshot
libraryDependencies += "co.upvest.google4s" %% "google4s-..." % "0.0.2-SNAPSHOT"
Examples
Please refer to the specific client documentation for examples
Contributing
Coming soon... feel free to create a PR we will figure it out.
Limitations
-
We try to implement the configs as lean as possible. As the result some advanced configuration could be missing. If you encounter this problem please create an issue or a PR we are happy to add what is missing.
-
Please refer to the specific client documentation for the list of known limitations:
Contact
By questions, comments or suggestions feel free to get in touch by creating an PR, issue or telepathically.
Cavecats sic
Copyright 2019 Ivan Morozov, Gustav Behm, Tokn GmbH (https://upvest.co)
google4s is provided to you as free software under the MIT license. The MIT software license is attached in the COPYING file.