Modules

Modules are simply built-in Extensions. They are thin layers that bootstrap and configure external third-party libraries (like HikariCP, Jackson, or Hibernate) using Jooby’s Extension API.

Unlike other frameworks, Jooby modules do not create new layers of abstraction or custom wrappers around the libraries they integrate. Instead, they expose the raw library components directly to your application via the Service Registry, allowing you to use the library’s native API exactly as its creators intended.

Modules are distributed as separate dependencies. Below is the catalog of officially supported Jooby modules:

Cloud

Data

Dependency Injection

Validation

Development Tools

  • Jooby Run: Run and hot reload your application.

  • Whoops: Pretty page stacktrace reporter.

  • Metrics: Application metrics from the excellent metrics library.

Event Bus

  • Camel: Camel module for Jooby.

  • Vertx: Vertx module for Jooby.

JSON

OpenAPI

Template Engine

Security

  • Jasypt: Encrypted configuration files.

  • Pac4j: Security engine module.

Session Store

  • Caffeine: In-memory session store using Caffeine cache.

  • JWT: JSON Web Token session store.

  • Redis: Save session data on redis.

Scheduler