Featherbed aims to be a typesafe, functional REST client API over Finagle. It provides a friendlier approach to building REST client interfaces in Scala. Currently, Featherbed is in the early stages of development, and includes the following modules:
featherbed-core
- the functional client interfacefeatherbed-circe
- automatic JSON request encoding and response decoding using circe
The following modules are planned:
featherbed-oauth
- OAuth authenticated requests
To get started with featherbed, check out the Guide.
Featherbed aims to have a minimal set of dependencies. Besides finagle-http
, the core project is
dependent only on shapeless and cats.
featherbed-circe depends additionall on circe
Featherbed is licensed under the Apache License, Version 2.0 (the "License"); you may not use this software except in compliance with the License.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
As of the latest build of featherbed,
- Finagle is licensed under the Apache License, Version 2.0
- shapeless is licensed under the Apache License, Version 2.0
- cats is licensed under the MIT License
- circe is licensed under the Apache License, Version 2.0
Featherbed is an independent project, and is neither governed nor endorsed by any of the above projects. All uses of the above projects by featherbed are within those allowed by each respective project's license. Any software using one of the above projects, even as a dependency of featherbed, must also abide by that project's license in addition to featherbed's.