giiita / refuel

Lightweight dependency injection engine and DI-driven tools.

Version Matrix


CircleCI Gitter chat Maven Central

refuel-container-macro Scala version support

refuel-container Scala version support

refuel-util Scala version support

Latest version of json

Latest version of http

Latest version of auth

Latest version of cipher

Latest version of cipher

Refuel is a powerful DI based framework.

Since there is only one maintainer, support for Scala3 will be phased in. At the moment, only refuel-container is supported for Scala3.

refuel-container (Compatible with Scala3)

Powerful DI framework with macros.

It is very simple and does not require a large number of components files or explicit dependency/scope declarations. You will be able to focus on the work you need to do. It is very compatible with DDD / hexagonal architecture, and supports application development and open source library development with excellent reference transparency.

All other refuel modules are based on refuel-container and will be ready to use.

refuel-util (Compatible with Scala3)

Rich type class interfaces.
Provides extended functions such as date and time, period, and collection.


You can handle JSON most easily with macro. Even without warming up, the conversion works fast and requires little declaration of serialize / deserialize codecs.


Http server client with Akka-HTTP.
In future, we plan to implement test stub control by dependency injection..


Can use a SAML service provider that supports akka http.
At this time, there is no Identity provider feature available.


The wrapper library that supports the interconversion of RSA / AES encryption methods.


Supports building an OAuth authorization server for Akka HTTP.

All authorization endpoints, token endpoints, and other grant flows are compliant with the OAuth 2.0 / 2.1 specification, and can be implemented mostly by implementing the prepared IF without having to think too much about the flow.