Compile-time libraries for JVM applications

Agent Skills

Structured knowledge packages for AI coding agents working with Avaje libraries. Install skills for Nima, Inject, Config, Jsonb, and Simple Logger.


Dependency Injection

Cloud Native/Kubernetes friendly dependency injection via source code generation instead of expensive reflection and classpath scanning.

It includes bean lifecycle support and component testing.


Jsonb

Flexible and reflection-free JSON library that uses Java annotation processing to generate JSON adapters. One of the top 3 fastest Java JSON libraries.


Validator

Reflection-free POJO validation library that uses annotation processing to generate validation adapters to run constraints.


HTTP Client

A wrapper on JDK 11's HttpClient. Includes support for defining client API's similar to JAX-RS, Retrofit and Feign. Uses Java annotation processing to generate client API implementations.


Jex

Lightweight wrapper over the JDK's own built-in HTTP server, adding various capabilities. (virtual threads, JSON, compression, etc.).


HTTP Generator

Lightweight JAX-RS style HTTP servers using Helidon SE, Javalin, or Jex. Use annotations like @Controller, @Get etc to define a REST API.

Uses Java annotation processing to generate source code for adapting and registering JAX-RS style classes to servers. These annotation processors are included in Jex and Nima.


Configuration

Provides external configuration. Loads YAML, TOML & properties files, supports dynamic configuration and plugins.


Nima

Combines avaje libraries with Helidon SE webserver to provide a lightweight, fast, and GraalVM native image compatible framework.


Simple logger

A SLF4J compatible simple logger that logs to System out with structured JSON. Lightweight and GraalVM native image compatible.


Prisms

Zero-dependency utility library for building annotation processors.


SPI Service

Zero-dependency library that adds SPI META-INF/services entries for classes and validates modular provides clauses.


Metrics

Metrics for the JVM, with @Timed classes and methods, gauges, counters, etc.

Supports integration with other avaje libraries, ebean, JAX-RS, Spring, Graphite, ElasticSearch, among others.


GraalVM Analysis

GraalVM native image compatible libraries for reflection-free runtime. Review Why GraalVM for details.