Awesome Java Projects

This is a list of repositories sorted by GitHub stars.

Bean Mapping

Frameworks that ease bean mapping.

7655 Stars

MapStruct

Code generator that simplifies mappings between different bean types, based on a convention-over-configuration approach.

2349 Stars

ModelMapper

Intelligent object mapping library that automatically maps objects to each other.

1316 Stars

Orika

JavaBean-mapping framework that recursively copies (among other capabilities) data from one object to another.

244 Stars

JMapper

Uses byte code manipulation for lightning-fast mapping. Supports annotations and API or XML configuration.

214 Stars

Selma

Annotation processor-based bean mapper.

127 Stars

reMap

Lambda and method handle-based mapping which requires code and not annotations if objects have different names.

102 Stars

dOOv

Provides fluent API for typesafe domain model validation and mapping. It uses annotations, code generation and a type safe DSL to make bean validation and mapping fast and easy.

Build

Tools that handle the build cycle and dependencies of an application.

25355 Stars

Bazel

Tool from Google that builds code quickly and reliably.

18540 Stars

Gradle

Incremental builds programmed via Groovy instead of declaring XML. Works well with Maven's dependency management.

8545 Stars

Buck

Encourages the creation of small, reusable modules consisting of code and resources.

5046 Stars

Apache Maven

Declarative build and dependency management that favors convention over configuration. It might be preferable to Apache Ant, which uses a rather procedural approach and can be difficult to maintain.

Bytecode Manipulation

Libraries to manipulate bytecode programmatically.

15504 Stars

bytecode-viewer

Java 8 Jar & Android APK reverse engineering suite. (GPL-3.0-only)

7154 Stars

Recaf

JVM reverse engineering toolkit, essentially an IDE for Java bytecode.

6821 Stars

Byte Buddy

Further simplifies bytecode generation with a fluent API.

4897 Stars

cglib

Bytecode generation library.

4228 Stars

Javassist

Tries to simplify bytecode editing.

1693 Stars

Mixin

Manipulate bytecode at runtime using real Java code.

511 Stars

Byteman

Manipulate bytecode at runtime via DSL (rules); mainly for testing/troubleshooting. (LGPL-2.1-or-later)

70 Stars

Perses

Dynamically injects failure/latency at the bytecode level according to principles of chaos engineering.

67 Stars

Maker

Provides low level bytecode generation.

Caching

Libraries that provide caching facilities.

17634 Stars

Caffeine

High-performance, near-optimal caching library.

2080 Stars

Ehcache

Distributed general-purpose cache.

1321 Stars

Infinispan

Highly concurrent key/value datastore used for caching.

746 Stars

cache2k

In-memory high performance caching library.

CLI

Libraries for everything related to the CLI.

5371 Stars

picocli

ANSI colors and styles in usage help with annotation-based POSIX/GNU/any syntax, subcommands, strong typing for both options and positional args.

2575 Stars

Lanterna

Easy console text-GUI library, similar to curses. (LGPL-3.0-only)

2023 Stars

JCommander

Command-line argument-parsing framework with custom types and validation via implementing interfaces.

1764 Stars

JLine

Includes features from modern shells like completion or history.

1192 Stars

Jansi

ANSI escape codes to format console output.

847 Stars

Airline

Annotation-based framework for parsing Git-like command-line arguments.

802 Stars

args4j

Small library to parse command-line arguments.

520 Stars

ASCII Table

Library to draw tables in ASCII.

360 Stars

JOpt Simple

Fluent parser that uses the POSIX#getopt and GNU#getopt_long syntaxes.

350 Stars

Text-IO

Aids the creation of full console-based applications.

165 Stars

Java ASCII Render

Graphical primitives for the console.

91 Stars

jbock

Reflectionless command line parser.

Cluster Management

Frameworks that can dynamically manage applications inside of a cluster.

826 Stars

Singularity

Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks.

637 Stars

Apache Aurora

Mesos framework for long-running services and cron jobs.

Code Analysis

Tools that provide metrics and quality measurements.

30837 Stars

p3c

Provides Alibaba's coding guidelines for PMD, IDEA and Eclipse.

15598 Stars

Infer

Modern static analysis tool for verifying the correctness of code.

8931 Stars

Checkstyle

Static analysis of coding conventions and standards. (LGPL-2.1-or-later)

7166 Stars

Error Prone

Catches common programming mistakes as compile-time errors.

5395 Stars

PMD

Source code analysis for finding bad coding practices.

4043 Stars

NullAway

Eliminates NullPointerExceptions with low build-time overhead.

3875 Stars

Spotbugs

Static analysis of bytecode to find potential bugs. (LGPL-2.1-only)

1926 Stars

Spoon

Library for analyzing and transforming Java source code.

1207 Stars

SonarJava

Static analyzer for SonarQube & SonarLint. (LGPL-3.0-only)

523 Stars

RefactorFirst

Identifies and prioritizes God Classes and Highly Coupled classes.

272 Stars

jQAssistant

Static code analysis with Neo4J-based query language. (GPL-3.0-only)

234 Stars

Error Prone Support

Error Prone extensions: extra bug checkers and a large battery of Refaster templates.

Code Coverage

Frameworks and tools that enable code coverage metrics collection for test suites.

4547 Stars

JaCoCo

Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation.

1051 Stars

Cobertura

Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics. (GPL-2.0-only)

69 Stars

Clover

Relies on source-code instrumentation instead of bytecode instrumentation.

Code Generators

Tools that generate patterns for repetitive code in order to reduce verbosity and error-proneness.

22405 Stars

JHipster

Yeoman source code generator for Spring Boot and AngularJS.

13440 Stars

Lombok

Code generator that aims to reduce verbosity.

10851 Stars

JavaPoet

API to generate source files.

10554 Stars

Auto

Generates factory, service, and value classes.

3559 Stars

Immutables

Annotation processors to generate simple, safe and consistent value objects.

921 Stars

Record-Builder

Companion builder class, withers and templates for Java records.

834 Stars

FreeBuilder

Automatically generates the Builder pattern.

189 Stars

Telosys

Simple and light code generator available as an Eclipse Plugin and also as a CLI.

149 Stars

ADT4J

JSR-269 code generator for algebraic data types.

148 Stars

Joda-Beans

Small framework that adds queryable properties to Java, enhancing JavaBeans.

136 Stars

Geci

Discovers files that need generated code, updates automatically and writes to the source with a convenient API.

93 Stars

Avaje Http Server

Generates Lightweight JAX-RS style http servers using Javalin or Helidon (Nima) SE.

0 Stars

JPA Buddy ![c]

Plugin for IntelliJ IDEA. Provides visual tools for generating JPA entities, Spring Data JPA repositories, Liquibase changelogs and SQL scripts. Offers automatic Liquibase/Flyway script generation by comparing model to DB, and reverse engineering JPA entities from DB tables.

Compiler-compiler

Frameworks that help to create parsers, interpreters or compilers.

18861 Stars

ANTLR

Complex full-featured framework for top-down parsing.

1277 Stars

JavaCC

Parser generator that generates top-down parsers. Allows lexical state switching and permits extended BNF specifications.

630 Stars

JFlex

Lexical analyzer generator.

Computer Vision

Libraries which seek to gain high level information from images and videos.

8307 Stars

JavaCV

Java interface to OpenCV, FFmpeg, and much more.

1175 Stars

BoofCV

Library for image processing, camera calibration, tracking, SFM, MVS, 3D vision, QR Code and much more.

748 Stars

ImageJ

Medical image processing application with an API.

Configuration

Libraries that provide external configuration.

6297 Stars

config

Configuration library supporting Java properties, JSON or its human optimized superset HOCON.

3173 Stars

Curator Framework

High-level API for Apache ZooKeeper.

937 Stars

owner

Reduces boilerplate of properties.

662 Stars

centraldogma

Highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2.

557 Stars

cfg4j

Modern configuration library for distributed apps written in Java.

465 Stars

Configurate

Configuration library with support for various configuration formats and transformations.

318 Stars

microconfig

Configuration system designed for microservices which helps to separate configuration from code. The configuration for different services can have common and specific parts and can be dynamically distributed.

100 Stars

avaje config

Loads yaml and properties files, supports dynamic configuration, plugins, file-watching and config event listeners.

62 Stars

KAConf

Annotation-based configuration system for Java and Kotlin.

51 Stars

dotenv

Twelve-factor configuration library which uses environment-specific files.

45 Stars

Externalized Properties

Lightweight yet powerful configuration library which supports resolution of properties from external sources and an extensible post-processing/conversion mechanism.

Constraint Satisfaction Problem Solver

Libraries that help with implementing optimization and satisfiability problems.

1647 Stars

Timefold

Flexible solver with Spring/Quarkus support and quickstarts for the Vehicle Routing Problem, Maintenance Scheduling, Employee Shift Scheduling and much more.

767 Stars

Choco

Off-the-shelf constraint satisfaction problem solver that uses constraint programming techniques.

488 Stars

OptaPlanner

Business planning and resource scheduling optimization solver.

234 Stars

JaCoP

Includes an interface for the FlatZinc language, enabling it to execute MiniZinc models. (AGPL-3.0)

CSV

Frameworks and libraries that simplify reading/writing CSV data.

936 Stars

uniVocity-parsers

One of the fastest and most feature-complete parsers. Also comes with parsers for TSV and fixed-width records.

677 Stars

FastCSV

Performance-optimized, dependency-free and RFC 4180 compliant.

529 Stars

Super CSV

Powerful CSV parser with support for Dozer, Joda-Time and Java 8.

195 Stars

jackson-dataformat-csv

Jackson extension for reading and writing CSV.

Data Structures

Efficient and specific data structures.

71186 Stars

Protobuf

Google's data interchange format.

10916 Stars

Apache Thrift

Data interchange format that originated at Facebook.

4418 Stars

Wire

Clean, lightweight protocol buffers.

3861 Stars

RoaringBitmap

Fast and efficient compressed bitmap.

3266 Stars

Apache Avro

Data interchange format with dynamic typing, untagged data, and absence of manually assigned IDs.

2461 Stars

Tape

Lightning-fast, transactional, file-based FIFO.

783 Stars

Persistent Collection

Persistent and immutable analogue of the Java Collections Framework.

766 Stars

Apache Orc

Fast and efficient columnar storage format for Hadoop-based workloads.

569 Stars

Big Queue

Fast and persistent queue based on memory-mapped files.

0 Stars

Apache Parquet

Columnar storage format based on assembly algorithms from Google's paper on Dremel.

0 Stars

HyperMinHash-java

Probabilistic data structure for computing union, intersection, and set cardinality in loglog space.

0 Stars

SBE

Simple Binary Encoding, one of the fastest message formats around.

Database

Everything that simplifies interactions with the database.

24316 Stars

Redisson

Allows for distributed and scalable data structures on top of a Redis server.

21107 Stars

HikariCP

High-performance JDBC connection pool.

16915 Stars

QuestDB

High-performance SQL database for time series. Supports InfluxDB line protocol, PostgreSQL wire protocol, and REST.

13984 Stars

druid

High-performance, column-oriented, distributed data store.

12784 Stars

Trino

Distributed SQL query engine for big data.

12689 Stars

Debezium

Low latency data streaming platform for change data capture.

12312 Stars

Jedis

Small client for interaction with Redis, with methods for commands.

11473 Stars

Realm

Mobile database to run directly inside phones, tablets or wearables.

9748 Stars

Flyway

Simple database migration tool.

6746 Stars

Leaf

Distributed ID generate service.

6706 Stars

jOOQ

Generates typesafe code based on SQL schema.

5495 Stars

Liquibase

Database-independent library for tracking, managing and applying database schema changes.

5117 Stars

Apache Calcite

Dynamic data management framework. It contains many of the pieces that comprise a typical database management system.

5047 Stars

MapDB

Embedded database engine that provides concurrent collections backed on disk or in off-heap memory.

4966 Stars

Querydsl

Typesafe unified queries.

4583 Stars

H2

Small SQL database notable for its in-memory functionality.

3124 Stars

requery

Modern, lightweight but powerful object mapping and SQL generator. Easily map to or create databases, or perform queries and updates from any Java-using platform.

2960 Stars

Chronicle Map

Efficient, in-memory (opt. persisted to disk), off-heap key-value store.

2120 Stars

JDBI

Convenient abstraction of JDBC.

2104 Stars

Jest

Client for the Elasticsearch REST API.

2096 Stars

Speedment

Database access library that utilizes Java 8's Stream API for querying.

2015 Stars

Apache Drill

Distributed, schema on-the-fly, ANSI SQL query engine for Big Data exploration.

1256 Stars

Xodus

Highly concurrent transactional schema-less and ACID-compliant embedded database.

1175 Stars

FlexyPool

Brings metrics and failover strategies to the most common connection pooling solutions.

1055 Stars

Apache Phoenix

High-performance relational database layer over HBase for low-latency applications.

663 Stars

Jinq

Typesafe database queries via symbolic execution of Java 8 Lambdas (on top of JPA or jOOQ).

626 Stars

CosId

Universal, flexible, high-performance distributed ID generator.

464 Stars

eXist

NoSQL document database and application platform. (LGPL-2.1-only)

433 Stars

OpenDJ

LDAPv3 compliant directory service, developed for the Java platform, providing a high performance, highly available, and secure store for the identities.

207 Stars

ArangoDB

ArangoDB Java driver.

143 Stars

jetcd

Client library for etcd.

124 Stars

Vibur DBCP

JDBC connection pool library with advanced performance monitoring capabilities.

103 Stars

Spring Data JPA MongoDB Expressions

Allows you to use MongoDB query language to query your relational database.

21 Stars

QueryStream

Build JPA Criteria queries using a Stream-like API.

15 Stars

MariaDB4j

Launcher for MariaDB that requires no installation or external dependencies.

15 Stars

Modality

Lightweight ORM with database reverse engineering features.

0 Stars

Lettuce

Lettuce is a scalable Redis client for building non-blocking Reactive applications.

Date and Time

Libraries related to handling date and time.

833 Stars

iCal4j

Parse and build iCalendar [RFC 5545](https://tools.ietf.org/html/rfc5545) data models.

470 Stars

Time4J

Advanced date and time library. (LGPL-2.1-only)

421 Stars

ThreeTen-Extra

Additional date-time classes that complement those in JDK 8.

195 Stars

Jollyday

Determines the holidays for a given year, country/name and eventually state/region.

Dependency Injection

Libraries that help to realize the [Inversion of Control](https://en.wikipedia.org/wiki/Inversion_of_control) paradigm.

17702 Stars

Dagger

Compile-time injection framework without reflection.

12742 Stars

Guice

Lightweight and opinionated framework that completes Dagger.

828 Stars

Governator

Extensions and utilities that enhance Google Guice.

363 Stars

Feather

Ultra-lightweight, JSR-330-compliant dependency injection library.

311 Stars

Avaje Inject

Microservice-focused compile-time injection framework without reflection.

155 Stars

Apache DeltaSpike

CDI extension framework.

115 Stars

HK2

Lightweight and dynamic dependency injection framework.

64 Stars

JayWire

Lightweight dependency injection framework. (LGPL-3.0-only)

Development

Augmentation of the development process at a fundamental level.

6084 Stars

JavaParser

Parse, modify and generate Java code.

2734 Stars

Manifold

Re-energizes Java with powerful features like type-safe metaprogramming, structural typing and extension methods.

2591 Stars

HotswapAgent

Unlimited runtime class and resource redefinition. (GPL-2.0-only)

1854 Stars

DCEVM

JVM modification that allows unlimited redefinition of loaded classes at runtime. (GPL-2.0-only)

386 Stars

AspectJ

Seamless aspect-oriented programming extension.

296 Stars

JavaSymbolSolver

Symbol solver.

143 Stars

Faux Pas

Library that simplifies error handling by circumventing the issue that none of the functional interfaces in the Java Runtime is allowed by default to throw checked exceptions.

128 Stars

NoException

Allows checked exceptions in functional interfaces and converts exceptions to Optional return.

79 Stars

SneakyThrow

Ignores checked exceptions without bytecode manipulation. Can also be used inside Java 8 stream operations.

30 Stars

Tail

Enable infinite recursion using tail call optimization.

Distributed Applications

Libraries and frameworks for writing distributed and fault-tolerant applications.

14012 Stars

Zuul

Gateway service that provides dynamic routing, monitoring, resiliency, security, and more.

12767 Stars

Apache ZooKeeper

Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems.

10653 Stars

resilience4j

Functional fault tolerance library.

6682 Stars

Apache Storm

Realtime computation system.

6564 Stars

Hazelcast

Highly scalable in-memory datagrid with a free open-source version.

4560 Stars

Quasar

Lightweight threads and actors for the JVM.

4312 Stars

Failsafe

Simple failure handling with retries and circuit breakers.

2365 Stars

Atomix

Fault-tolerant distributed coordination framework.

2363 Stars

Apache Geode

In-memory data management system that provides reliable asynchronous event notifications and guaranteed message delivery.

1074 Stars

JGroups

Toolkit for reliable messaging and cluster creation.

638 Stars

ScaleCube Services

Embeddable Cluster-Membership library based on SWIM and gossip protocol.

88 Stars

OpenIG

High-performance reverse proxy server with specialized session management and credential replay functionality.

45 Stars

Dropwizard Circuit Breaker

Circuit breaker design pattern for Dropwizard. (GPL-2.0-only)

Distributed Transactions

Distributed transactions provide a mechanism for ensuring consistency of data updates in the presence of concurrent access and partial failures.

484 Stars

Atomikos

Provides transactions for REST, SOA and microservices with support for JTA and XA.

260 Stars

Narayana

Provides support for traditional ACID and compensation transactions, also complies with JTA, JTS and other standards. (LGPL-2.1-only)

0 Stars

Bitronix

Simple but complete implementation of the JTA 1.1 API.

0 Stars

Seata

Delivers high performance and easy to use distributed transaction services under a microservices architecture.

Distribution

Tools that handle the distribution of applications in native formats.

2621 Stars

packr

Packs JARs, assets and the JVM for native distribution on Windows, Linux and macOS.

1148 Stars

Capsule

Simple and powerful packaging and deployment. A fat JAR on steroids, or a "Docker for Java" that supports JVM-optimized containers.

680 Stars

Artipie

Binary artifact management toolkit which hosts them on the file system or S3.

528 Stars

Getdown

A system for deploying Java applications to end-user computers and keeping them up to date. Developed as an alternative to Java Web Start.

481 Stars

Central Repository

Largest binary component repository available as a free service to the open-source community. Default used by Apache Maven, and available in all other build tools.

415 Stars

jDeploy

Deploy desktop apps as native Mac, Windows or Linux bundles.

351 Stars

IzPack

Setup authoring tool for cross-platform deployments.

135 Stars

really-executable-jars-maven-plugin

Maven plugin for making self-executing JARs.

50 Stars

jlink.online

Builds optimized runtimes over HTTP.

0 Stars

JavaPackager

Maven and Gradle plugin which provides an easy way to package Java applications in native Windows, Mac OS X or GNU/Linux executables, and generate installers for them.

Document Processing

Libraries that assist with processing office document formats.

2353 Stars

docx4j

Create and manipulate Microsoft Open XML files.

2225 Stars

Apache POI

Supports OOXML (XLSX, DOCX, PPTX) as well as OLE2 (XLS, DOC or PPT).

881 Stars

fastexcel

High performance library to read and write large Excel (XLSX) worksheets.

588 Stars

documents4j

API for document format conversion using third-party converters such as MS Word.

82 Stars

zerocell

Annotation-based API for reading data from Excel sheets into POJOs with focus on reduced overhead.

Financial

Libraries related to the financial domain.

2419 Stars

ta4j

Library for technical analysis.

971 Stars

Stripe

Integration with the Stripe API.

653 Stars

Cassandre

Trading bot framework.

501 Stars

Parity

Platform for trading venues.

341 Stars

Philadelphia

Low-latency financial information exchange.

41 Stars

Square

Integration with the Square API.

Formal Verification

Formal-methods tools: proof assistants, model checking, symbolic execution, etc.

1136 Stars

Checker Framework

Pluggable type systems. Includes nullness types, physical units, immutability types and more. (GPL-2.0-only WITH Classpath-exception-2.0)

612 Stars

Java Path Finder (JPF)

JVM formal verification tool containing a model checker and more. Created by NASA.

249 Stars

Daikon

Detects likely program invariants and generates JML specs based on those invariants.

178 Stars

OpenJML

Translates JML specifications into SMT-LIB format and passes the proof problems implied by the program to backend solvers. (GPL-2.0-only)

106 Stars

CATG

Concolic unit testing engine. Automatically generates unit tests using formal methods.

79 Stars

KeY

Formal software development tool that aims to integrate design, implementation, formal specification, and formal verification of object-oriented software as seamlessly as possible. Uses JML for specification and symbolic execution for verification. (GPL-2.0-or-later)

4 Stars

JMLOK 2.0

Detects inconsistencies between code and JML specification through feedback-directed random tests generation, and suggests a likely cause for each nonconformance detected. (GPL-3.0-only)

Functional Programming

Libraries that facilitate functional programming.

6134 Stars

Vavr

Functional component library that provides persistent data types and functional control structures.

2284 Stars

StreamEx

Enhances Java 8 Streams.

2123 Stars

jOOλ

Extension to Java 8 that aims to fix gaps in lambda by providing numerous missing types and a rich set of sequential Stream API additions.

1620 Stars

Functional Java

Implements numerous basic and advanced programming abstractions that assist composition-oriented development.

578 Stars

derive4j

Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching and morphisms. (GPL-3.0-only)

485 Stars

protonpack

Collection of stream utilities.

0 Stars

Cyclops

Monad and stream utilities, comprehensions, pattern matching, functional extensions for all JDK collections, future streams, trampolines and much more.

Game Development

Frameworks that support the development of games.

25064 Stars

libGDX

All-round cross-platform, high-level framework.

5330 Stars

LWJGL

Robust framework that abstracts libraries like OpenGL/CL/AL.

4801 Stars

FXGL

JavaFX Game Development Framework.

4189 Stars

jMonkeyEngine

Game engine for modern 3D development.

1147 Stars

JBox2D

Port of the renowned C++ 2D physics engine.

825 Stars

Litiengine

AWT-based, lightweight 2D game engine.

507 Stars

Mini2Dx

Beginner-friendly, master-ready framework for rapidly prototyping and building 2D games.

0 Stars

Void2D

High-level 2D game engine with built-in physics based on Swing.

Geospatial

Libraries for working with geospatial data and algorithms.

6426 Stars

GraphHopper

Road-routing engine. Used as a Java library or standalone web service.

1904 Stars

GeoTools

Library that provides tools for geospatial data. (LGPL-2.1-only)

1372 Stars

Mapsforge

Map rendering based on OpenStreetMap data. (LGPL-3.0-only)

959 Stars

Spatial4j

General-purpose spatial/geospatial library.

433 Stars

Geo

GeoHash utilities in Java.

219 Stars

H2GIS

Spatial extension of the H2 database. (LGPL-3.0-only)

119 Stars

Apache SIS

Library for developing geospatial applications.

67 Stars

Jgeohash

Library for using the GeoHash algorithm.

GUI

Libraries to create modern graphical user interfaces.

3231 Stars

JavaFX

Successor of Swing.

815 Stars

Scene Builder

Visual layout tool for JavaFX applications.

193 Stars

SWT

Graphical widget toolkit.

High Performance

Everything about high-performance computation, from collections to specific libraries.

18325 Stars

Disruptor

Inter-thread messaging library.

3824 Stars

JCTools

Concurrency tools currently missing from the JDK.

2162 Stars

fastutil

Fast and compact type-specific collections.

1041 Stars

HPPC

Primitive collections.

1019 Stars

Koloboke

Carefully designed extension of the Java Collections Framework with primitive specializations and more.

0 Stars

Agrona

Data structures and utility methods that are common in high-performance applications.

0 Stars

Eclipse Collections

Collections framework inspired by Smalltalk.

HTTP Clients

Libraries that assist with creating HTTP requests and/or binding responses.

43906 Stars

Retrofit

Typesafe REST client.

9786 Stars

Feign

HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.

6395 Stars

Async Http Client

Asynchronous HTTP and WebSocket client library.

4618 Stars

Ribbon

Client-side IPC library that is battle-tested in the cloud.

2706 Stars

unirest-java

Simplified, lightweight HTTP client library.

1531 Stars

Apache HttpComponents

A toolset of low-level Java components focused on HTTP and associated protocols.

1433 Stars

Google HTTP Client

Pluggable HTTP transport abstraction with support for java.net.HttpURLConnection, Apache HTTP Client, Android, Google App Engine, XML, Gson, Jackson and Protobuf.

338 Stars

Riptide

Client-side response routing for Spring's RestTemplate.

295 Stars

methanol

HTTP client extensions library.

93 Stars

Avaje Http Client

A wrapper on JDK 11's HttpClient that adds Feign-like interface among other enhancements.

Hypermedia Types

Libraries that handle serialization to hypermedia types.

386 Stars

JSON-LD

JSON-LD implementation.

28 Stars

Siren4J

Library for the Siren specification.

25 Stars

hate

Builds hypermedia-friendly objects according to HAL specification.

IDE

Integrated development environments that try to simplify several aspects of development.

184598 Stars

Visual Studio Code

Provides Java support for lightweight projects with a simple, modern workflow by using extensions from the internal marketplace.

3052 Stars

NetBeans

Provides integration for several Java SE and EE features, from database access to HTML5.

Imagery

Libraries that assist with the creation, evaluation or manipulation of graphical images.

33931 Stars

ZXing

Multi-format 1D/2D barcode image processing library.

5408 Stars

Thumbnailator

High-quality thumbnail generation library.

2117 Stars

TwelveMonkeys

Collection of plugins that extend the number of supported image file formats.

1748 Stars

Tess4J

JNA wrapper for Tesseract OCR API.

1242 Stars

Imgscalr

Simple, efficient and hardware-accelerated image-scaling library implemented in pure Java 2D.

392 Stars

image-comparison

Library that compares 2 images with the same sizes and shows the differences visually by drawing rectangles. Some parts of the image can be excluded from the comparison.

Introspection

Libraries that help make the Java introspection and reflection API easier and faster to use.

4773 Stars

Reflections

Reflections scans your classpath, indexes the metadata, allows you to query it on runtime and may save and collect that information for many modules within your project.

2980 Stars

ClassGraph

ClassGraph (formerly FastClasspathScanner) is an uber-fast, ultra-lightweight, parallelized classpath scanner and module scanner for Java, Scala, Kotlin and other JVM languages.

2832 Stars

jOOR

jOOR stands for jOOR Object Oriented Reflection. It is a simple wrapper for the java.lang.reflect package.

1545 Stars

ReflectASM

ReflectASM is a very small Java library that provides high performance reflection by using code generation.

631 Stars

Objenesis

Allows dynamic instantiation without default constructor, e.g. constructors which have required arguments, side effects or throw exceptions.

109 Stars

Mirror

Mirror was created to bring light to a simple problem, usually named ReflectionUtil, which is on almost all projects that rely on reflection to do advanced tasks.

Job Scheduling

Libraries for scheduling background jobs.

6715 Stars

Quartz

Feature-rich, open source job scheduling library that can be integrated within virtually any Java application.

4151 Stars

shedlock

Makes sure that your scheduled tasks are executed at most once at the same time. If a task is being executed on one node, it acquires a lock which prevents execution of the same task from another node or thread.

2971 Stars

JobRunr

Job scheduling library which utilizes lambdas for fire-and-forget, delayed and recurring jobs. Guarantees execution by single scheduler instance using optimistic locking. Has features for persistence, minimal dependencies and is embeddable.

1554 Stars

db-scheduler

Persistent and cluster-friendly scheduler.

627 Stars

easy-batch

Set up batch jobs with simple processing pipelines. Records are read in sequence from a data source, processed in pipeline and written in batches to a data sink.

280 Stars

Sundial

Lightweight framework to simply define jobs, define triggers and start the scheduler.

146 Stars

Wisp

Simple library with minimal footprint and straightforward API.

JSON

Libraries for serializing and deserializing JSON to and from Java objects.

25671 Stars

fastjson

Very fast processor with no additional dependencies and full data binding.

24193 Stars

Gson

Serializes objects to JSON and vice versa. Good performance with on-the-fly usage.

10130 Stars

Moshi

Modern JSON library, less opinionated and uses built-in types like List and Map.

9713 Stars

Jackson

Similar to GSON, but offers performance gains if you need to instantiate the library more often.

9409 Stars

JsonPath

Extract data from JSON using XPATH-like syntax.

3184 Stars

LoganSquare

JSON parsing and serializing library based on Jackson's streaming API. Outperforms GSON & Jackson's library.

1670 Stars

Jolt

JSON to JSON transformation tool.

1565 Stars

jsoniter

Fast and flexible library with iterator and lazy parsing API.

1061 Stars

DSL-JSON

JSON library with advanced compile time databinding.

469 Stars

HikariJSON

High-performance JSON parser, 2x faster than Jackson.

416 Stars

jackson-modules-java8

Set of Jackson modules for Java 8 datatypes and features.

381 Stars

JSON-io

Convert Java to JSON. Convert JSON to Java. Pretty print JSON. Java JSON serializer.

315 Stars

JsonSurfer

Streaming JsonPath processor dedicated to processing big and complicated JSON data.

265 Stars

Jackson-datatype-money

Open-source Jackson module to support JSON serialization and deserialization of JavaMoney data types.

224 Stars

Genson

Powerful and easy-to-use Java-to-JSON conversion library.

215 Stars

Yasson

Binding layer between classes and JSON documents similar to JAXB.

92 Stars

Avaje Jsonb

Reflection-free Json binding via source code generation with Jackson-like annotations.

JVM and JDK

Current implementations of the JVM/JDK.

22850 Stars

Open JDK

Open JDK community home. (GPL-2.0-only WITH Classpath-exception-2.0)

21573 Stars

Graal

Polyglot embeddable JVM. (GPL-2.0-only WITH Classpath-exception-2.0)

4327 Stars

Dragonwell8

Downstream version of OpenJDK optimized for online e-commerce, financial, logistics applications.

3514 Stars

OpenJ9

High performance, enterprise-calibre, flexibly licensed, openly-governed cross-platform JVM extending and augmenting the runtime technology components from the Eclipse OMR and OpenJDK project.

3282 Stars

Adopt Open JDK

Community-driven OpenJDK builds, including both HotSpot and OpenJ9.

2132 Stars

Corretto

No-cost, multiplatform, production-ready distribution of OpenJDK by Amazon. (GPL-2.0-only WITH Classpath-exception-2.0)

1831 Stars

ParparVM

VM with non-blocking, concurrent GC for iOS. (GPL-2.0-only WITH Classpath-exception-2.0)

1236 Stars

Avian

JVM with JIT, AOT modes and iOS port.

607 Stars

SAP Machine

SAP's no-cost, rigorously tested and JCK-verified OpenJDK friendly fork. (GPL-2.0-only WITH Classpath-exception-2.0)

404 Stars

Liberica JDK

Built from OpenJDK, thoroughly tested and passed the JCK. (GPL-2.0-only WITH Classpath-exception-2.0)

285 Stars

Zulu

OpenJDK builds for Windows, Linux, and macOS. (GPL-2.0-only WITH Classpath-exception-2.0)

Logging

Libraries that log the behavior of an application.

21071 Stars

Kibana

Analyzes and visualizes log files. Some features require payment.

14846 Stars

Logstash

Tool for managing log files.

8024 Stars

Graylog

Open-source aggregator suited for extended role and permission management. (GPL-3.0-only)

3602 Stars

Apache Log4j 2

Complete rewrite with a powerful plugin and configuration architecture.

3220 Stars

Logback

Robust logging library with interesting configuration options via Groovy.

2509 Stars

SLF4J

Abstraction layer/simple logging facade.

2223 Stars

p6spy

Enables logging for all JDBC transactions without changes to the code.

2041 Stars

Logbook

Extensible, open-source library for HTTP request and response logging.

769 Stars

tinylog

Lightweight logging framework with static logger class.

182 Stars

OpenTracing Toolbox

Collection of libraries that build on top of OpenTracing and provide extensions and plugins to existing instrumentations.

59 Stars

Echopraxia

API designed around structured logging, rich context, and conditional logging. There are Logback and Log4J2 implementations, but Echopraxia's API is completely dependency-free, meaning it can be implemented with any logging API.

Machine Learning

Tools that provide specific statistical algorithms for learning from data.

25982 Stars

Apache Flink

Fast, reliable, large-scale data processing engine.

14229 Stars

Deeplearning4j

Distributed and multi-threaded deep learning library.

11986 Stars

H2O ![c]

Analytics engine for statistics over big data.

6369 Stars

Smile

Statistical Machine Intelligence and Learning Engine provides a set of machine learning algorithms and a visualization library.

4806 Stars

DJL

High-level and engine-agnostic framework for deep learning.

2977 Stars

m2cgen

CLI tool to transpile models into native code.

2286 Stars

Apache Mahout

Scalable algorithms focused on collaborative filtering, clustering and classification.

1785 Stars

Oryx 2

Framework for building real-time, large-scale machine learning applications. Includes end-to-end applications for collaborative filtering, classification, regression, and clustering.

1584 Stars

Siddhi

Cloud native streaming and complex event processing engine.

1409 Stars

Tribuo

Provides tools for classification, regression, clustering, model development and interfaces with other libraries such as scikit-learn, pytorch and TensorFlow.

1085 Stars

DatumBox

Provides several algorithms and pre-trained models for natural language processing.

798 Stars

JSAT

Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. (GPL-3.0-only)

502 Stars

oj! Algorithms

High-performance mathematics, linear algebra and optimisation needed for data science, machine learning and scientific computing.

189 Stars

Weka

Collection of algorithms for data mining tasks ranging from pre-processing to visualization. (GPL-3.0-only)

64 Stars

Intelligent java

Seamlessly integrate with remote deep learning and language models programmatically.

Messaging

Tools that help send messages between clients to ensure protocol independency.

32521 Stars

Apache Kafka

High-throughput distributed messaging system.

24729 Stars

EventBus

Simple publish/subscribe event bus.

22427 Stars

Apache RocketMQ

Fast, reliable, and scalable distributed messaging platform.

15221 Stars

Apache Pulsar

Distributed pub/sub-messaging system.

6196 Stars

Apache Camel

Glues together different transport APIs via Enterprise Integration Patterns.

2445 Stars

JeroMQ

Implementation of ZeroMQ.

2427 Stars

Apache ActiveMQ

Message broker that implements JMS and converts synchronous to asynchronous communication.

2414 Stars

Smack

Cross-platform XMPP client library.

1307 Stars

RabbitMQ Java client

RabbitMQ client.

967 Stars

Nakadi

Provides a RESTful API on top of Kafka.

856 Stars

Hermes

Fast and reliable message broker built on top of Kafka.

662 Stars

NATS client

NATS client.

136 Stars

Apache Qpid

Apache Qpid makes messaging tools that speak AMQP and support many languages and platforms.

0 Stars

Aeron

Efficient, reliable, unicast and multicast message transport.

0 Stars

Deezpatch

Simple, lightweight, and performant dispatch library for decoupling messages (requests and events) and message handlers.

Microservice

Tools for creating and managing microservices.

32911 Stars

Nacos

Dynamic service discovery, configuration and service management platform for building cloud native applications.

23104 Stars

Sentinel

Flow control component enabling reliability, resilience and monitoring for microservices.

15650 Stars

Quarkus

Kubernetes stack tailored for the HotSpot and Graal VM.

12705 Stars

Eureka

REST-based service registry for resilient load balancing and failover.

6407 Stars

Micronaut

Modern full-stack framework with focus on modularity, minimal memory footprint and startup time.

5105 Stars

Armeria

Asynchronous RPC/REST client/server library built on top of Java 8, Netty, HTTP/2, Thrift and gRPC.

4751 Stars

OpenAI-Java

Java libraries for using OpenAI's GPT-3 API.

4659 Stars

JDA

Wrapping of the Discord REST API and its WebSocket events.

3782 Stars

Helidon

Two-style approach for writing microservices: Functional-reactive and as an implementation of MicroProfile.

3647 Stars

kubernetes-client

Client provides access to the full Kubernetes & OpenShift REST APIs via a fluent DSL.

1648 Stars

Apollo

Libraries for writing composable microservices.

990 Stars

ActiveRPC

Lightweight and fast library for complex high-load distributed applications and Memcached-like solutions.

423 Stars

consul-api

Client for the Consul API: a distributed, highly available and datacenter-aware registry/discovery service.

Miscellaneous

Everything else.

93972 Stars

Design Patterns

Implementation and explanation of the most common design patterns.

23639 Stars

FizzBuzz Enterprise Edition

No-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes. (No explicit license)

16753 Stars

Modern Java - A Guide to Java 8

Popular Java 8 guide.

11823 Stars

OpenRefine

Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases.

6040 Stars

J2ObjC

Java-to-Objective-C translator for porting Android libraries to iOS.

5354 Stars

OctoLinker

Browser extension which allows to navigate through code on GitHub more efficiently.

3192 Stars

Svix

Library for the Svix API to send webhooks and verify signatures.

2576 Stars

AWS SDK for Java 2.0

Wrapper around AWS' API.

2546 Stars

Jimfs

In-memory file system.

2124 Stars

LittleProxy

High performance HTTP proxy atop Netty's event-based networking library.

1771 Stars

CQEngine

Ultra-fast, SQL-like queries on Java collections.

1576 Stars

Maven Wrapper

Analogue of Gradle Wrapper for Maven, allows building projects without installing maven.

1489 Stars

jsweet

Source transpiler to TypeScript/JavaScript.

1445 Stars

FF4J

Feature Flags for Java.

1292 Stars

Simple Java Mail

Mailing with a clean and fluent API.

1207 Stars

JBot

Framework for building chatbots. (GPL-3.0-only)

1154 Stars

JBake

Static website generator.

1015 Stars

Togglz

Implementation of the Feature Toggles pattern.

921 Stars

Polyglot for Maven

Extensions for Maven 3.3.1+ that allows writing the POM model in dialects other than XML.

679 Stars

Joda-Money

Basic currency and money classes and algorithms not provided by the JDK.

630 Stars

TypeTools

Tools for resolving generic types.

594 Stars

Membrane Service Proxy

Open-source, reverse-proxy framework.

507 Stars

jOOX

Simple wrapper for the org.w3c.dom package, to allow for fluent XML document creation and manipulation with an API inspired by jQuery.

488 Stars

PipelinR

Small utility library for using handlers and commands with pipelines.

463 Stars

yGuard

Obfuscation via renaming and shrinking.

417 Stars

Smooks

Framework for fragment-based message processing. (Apache-2.0 OR LGPL-3.0-or-later)

388 Stars

Modernizer

Detect uses of legacy Java APIs.

265 Stars

JCuda

JCuda offers Java bindings for CUDA and CUDA-related libraries.

190 Stars

MinimalFTP

Lightweight, small and customizable FTP server.

75 Stars

XMLBeam

Processes XML by using annotations or XPath within code.

62 Stars

JObfuscator![c]

Source code obfuscator.

26 Stars

RR4J

RR4J is a tool that records java bytecode execution and later allows developers to replay locally.

Mobile Development

Tools for creating or managing mobile applications.

1831 Stars

Codename One

Cross-platform solution for writing native mobile apps. (GPL-2.0-only WITH Classpath-exception-2.0)

595 Stars

Multi-OS Engine

Open-source, cross-platform engine to develop native mobile (iOS, Android, etc.) apps.

Monitoring

Tools that monitor applications in production.

17434 Stars

zipkin

Distributed tracing system which gathers timing data needed to troubleshoot latency problems in microservice architectures.

13822 Stars

Pinpoint

Open-source APM tool.

7849 Stars

Metrics

Expose metrics via JMX or HTTP and send them to a database.

5989 Stars

hippo4j

Dynamic and observable thread pool framework.

3039 Stars

JavaMelody

Performance monitoring and profiling.

2272 Stars

Prometheus

Provides a multi-dimensional data model, DSL, autonomous server nodes and much more.

1702 Stars

jmxtrans

Connect to multiple JVMs and query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVM attributes. Supports different output writes, including Graphite, Ganglia, and StatsD.

1700 Stars

Stagemonitor

Open-source performance monitoring and transaction tracing for JVM apps.

1332 Stars

Glowroot

Open-source Java APM.

1315 Stars

Sentry ![c]

Integration with [Sentry](https://github.com/getsentry/sentry), an application error tracking and performance analysis platform.

842 Stars

Jolokia

JMX over REST.

720 Stars

Datadog ![c]

Modern monitoring & analytics.

573 Stars

Automon

Combines the power of AOP with monitoring and/or logging tools.

541 Stars

inspectIT

Captures detailed run-time information via hooks that can be changed on the fly. It supports tracing over multiple systems via the OpenTracing API and can correlate the data with end user monitoring.

490 Stars

Jaeger client

Jaeger client.

164 Stars

nudge4j

Remote developer console from the browser for Java 8 via bytecode injection.

160 Stars

Sysmon

Lightweight platform monitoring tool for Java VMs.

54 Stars

Failsafe Actuator

Out of the box monitoring of Failsafe Circuit Breaker in Spring-Boot environment.

24 Stars

SPM ![c]

Performance monitor with distributing transaction tracing for JVM apps.

0 Stars

HertzBeat

Real-time monitoring system with custom-monitor and agentless.

Native

For working with platform-specific native libraries.

8910 Stars

JNA

Work with native libraries without writing JNI. Also provides interfaces to common system libraries.

4695 Stars

JavaCPP

Provides efficient and easy access to native C++.

1319 Stars

JNR

Work with native libraries without writing JNI. Also provides interfaces to common system libraries. Same goals as JNA, but faster, and serves as the basis for the upcoming [Project Panama](http://openjdk.java.net/projects/panama).

477 Stars

Aparapi

Converts bytecode to OpenCL which allows execution on GPUs.

Natural Language Processing

Libraries that specialize in processing text.

10072 Stars

CoreNLP

Provides a set of fundamental tools for tasks like tagging, named entity recognition, and sentiment analysis. (GPL-3.0-or-later)

480 Stars

CogCompNLP

Provides common annotators for plain text input. (Research and Academic Use License)

204 Stars

DKPro

Collection of reusable NLP tools for linguistic pre-processing, machine learning, lexical resources, etc.

Networking

Libraries for building network servers.

41525 Stars

Dubbo

High-performance RPC framework.

34937 Stars

Netty

Framework for building high-performance network applications.

12011 Stars

gRPC

RPC framework based on protobuf and HTTP/2.

3749 Stars

Undertow

Web server providing both blocking and non-blocking APIs based on NIO. Used as a network layer in WildFly. (LGPL-2.1-only)

2644 Stars

sshj

Programmatically use SSH, SCP or SFTP.

1853 Stars

KryoNet

Provides a clean and simple API for efficient TCP and UDP client/server network communication using NIO and Kryo.

1020 Stars

ServiceTalk

Framework built on Netty with APIs tailored to specific protocols and support for multiple programming paradigms.

921 Stars

MINA

Abstract, event-driven async I/O API for network operations over TCP/IP and UDP/IP via Java NIO.

596 Stars

Comsat

Integrates standard Java web-related APIs with Quasar fibers and actors.

247 Stars

Drift

Easy-to-use, annotation-based library for creating Thrift clients and serializable types.

208 Stars

TLS Channel

Implements a ByteChannel interface over SSLEngine, enabling easy-to-use (socket-like) TLS.

166 Stars

Fluency

High throughput data ingestion logger to Fluentd and Fluent Bit.

35 Stars

urnlib

Represent, parse and encode URNs, as in RFC 2141. (GPL-3.0-only)

21 Stars

Commons-networking

Client for server-sent events (SSE).

0 Stars

Grizzly

NIO framework. Used as a network layer in Glassfish.

ORM

APIs that handle the persistence of objects.

20415 Stars

MyBatis

Couples objects with stored procedures or SQL statements.

6431 Stars

Hibernate

Robust and widely used, with an active community. (LGPL-2.1-only)

1520 Stars

Ebean

Provides simple and fast data access.

1260 Stars

ObjectiveSql

ActiveRecord ORM for rapid development and convention over configuration.

496 Stars

Doma

Database access framework that verifies and generates source code at compile time using annotation processing as well as native SQL templates called two-way SQL.

458 Stars

SimpleFlatMapper

Simple database and CSV mapper.

424 Stars

Permazen

Language-natural persistence layer.

339 Stars

Apache Cayenne

Provides a clean, static API for data access. Also includes a GUI Modeler for working with database mappings, and DB reverse engineering and generation.

238 Stars

EclipseLink

Supports a number of persistence standards: JPA, JAXB, JCA and SDO.

PaaS

Java platform as a service.

PDF

Tools to help with PDF files.

4261 Stars

OpenPDF

Open-source iText fork. (LGPL-3.0-only & MPL-2.0)

3050 Stars

Apache PDFBox

Toolbox for creating and manipulating PDFs.

2221 Stars

flyingsaucer

XML/XHTML and CSS 2.1 renderer. (LGPL-2.1-or-later)

2148 Stars

Open HTML to PDF

Properly supports modern PDF standards based on flyingsaucer and Apache PDFBox.

2026 Stars

Tabula

Extracts tables from PDF files.

1681 Stars

iText ![c]

Creates PDF files programmatically.

536 Stars

Eclipse BIRT

Report engine for creating PDF and other formats (DOCX, XLSX, HTML, etc) using Eclipse-based visual editor.

257 Stars

Dynamic Jasper

Abstraction layer to JasperReports. (LGPL-3.0-only)

243 Stars

DynamicReports

Simplifies JasperReports. (LGPL-3.0-only)

224 Stars

Apache FOP

Creates PDFs from XSL-FO.

0 Stars

JasperReports

Complex reporting engine. (LGPL-3.0-only)

Performance analysis

Tools for performance analysis, profiling and benchmarking.

3282 Stars

JITWatch

Analyze the JIT compiler optimisations made by the HotSpot JVM.

2625 Stars

JMH

Harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targeting the JVM. (GPL-2.0 only WITH Classpath-exception-2.0)

1254 Stars

honest-profiler

Low-overhead, bias-free sampling profiler.

701 Stars

jHiccup

Logs and records platform JVM stalls.

466 Stars

LatencyUtils

Utilities for latency measurement and reporting.

Apache Commons

Reusable, open source Java software.

2955 Stars

Lang

Provides extra functionality for classes in java.lang.

1069 Stars

IO

Collection of I/O utilities.

724 Stars

Collections

Extends or augments the Java Collections Framework.

643 Stars

Math

Lightweight, self-contained mathematics and statistics components.

549 Stars

Pool

Generic object pooling component.

483 Stars

Codec

General encoding/decoding algorithms, e.g. phonetic, base64 or URL.

482 Stars

Imaging

Image library.

408 Stars

CSV

Component for reading and writing comma separated value files.

394 Stars

Compress

Defines an API for working with tar, zip and bzip2 files.

390 Stars

DbUtils

JDBC helper library.

387 Stars

CLI

Command-line arguments parser.

365 Stars

DBCP

Database connection pooling services.

318 Stars

BeanUtils

Easy-to-use wrappers around the Java reflection and introspection APIs.

290 Stars

Net

Collection of network utilities and protocol implementations.

271 Stars

BCEL

Byte Code Engineering Library - analyze, create, and manipulate Java class files.

259 Stars

FileUpload

File upload capability for your servlets and web applications.

246 Stars

VFS

Virtual File System component for treating files, FTP, SMB, ZIP and such like as a single logical file system.

236 Stars

Jexl

Expression language which extends the Expression Language of the JSTL.

225 Stars

Validator

Framework to define validators and validation rules in an xml file.

213 Stars

Configuration

Reading of configuration/preferences files in various formats.

175 Stars

Email

Library for sending e-mail from Java.

165 Stars

Logging

Wrapper around a variety of logging API implementations.

160 Stars

Exec

API for dealing with external process execution and environment management in Java.

106 Stars

JCS

Java Caching System.

105 Stars

Daemon

Alternative invocation mechanism for unix-daemon-like java code.

88 Stars

OGNL

Object-graph navigation language.

81 Stars

Chain

Chain of Responsibility pattern implementation.

65 Stars

SCXML

Implementation of the State Chart XML specification aimed at creating and maintaining a Java SCXML engine.

63 Stars

RNG

Commons Rng provides implementations of pseudo-random numbers generators.

60 Stars

Digester

XML-to-Java-object mapping utility.

55 Stars

RDF

Common implementation of RDF 1.1 that could be implemented by systems on the JVM.

42 Stars

Graph

General purpose graph APIs and algorithms.

40 Stars

JXPath

Utilities for manipulating Java Beans using the XPath syntax.

30 Stars

BSF

Bean Scripting Framework - interface to scripting languages, including JSR-223.

26 Stars

Functor

Function that can be manipulated as an object, or an object representing a single, generic function.

26 Stars

Proxy

Library for creating dynamic proxies.

26 Stars

Weaver

Provides an easy way to enhance (weave) compiled bytecode.

22 Stars

Jelly

XML based scripting and processing engine.

19 Stars

JCI

Java Compiler Interface.

Other

Other kinds of platforms

3680 Stars

Light-4J

Fast, lightweight and productive microservices framework with built-in [security](https://github.com/networknt/light-oauth2/).

1342 Stars

CUBA Platform

High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin.

259 Stars

Orienteer

Open-source business application platform for rapid configuration/development of CRM, ERP, LMS and other applications.

Processes

Libraries that help the management of operating system processes.

913 Stars

zt-exec

Provides a unified API to Apache Commons Exec and ProcessBuilder.

138 Stars

zt-process-killer

Stops processes started from Java or the system processes via PID.

40 Stars

ch.vorburger.exec

Convenient API around Apache Commons Exec.

Reactive libraries

Libraries for developing reactive applications.

48258 Stars

RxJava

Allows for composing asynchronous and event-based programs using observable sequences.

14659 Stars

vert.x

Polyglot event-driven application framework.

5220 Stars

Reactor

Library for building reactive fast-data applications.

4874 Stars

Reactive Streams

Provides a standard for asynchronous stream processing with non-blocking backpressure.

0 Stars

Akka

Toolkit and runtime for building concurrent, distributed, fault-tolerant and event-driven applications.

REST Frameworks

Frameworks specifically for creating RESTful services.

9658 Stars

Spark

Sinatra inspired framework.

8582 Stars

Dropwizard

Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics.

3703 Stars

springdoc-openapi

Automates the generation of API documentation using Spring Boot projects.

2534 Stars

rest.li

Framework for building robust, scalable RESTful architectures using typesafe bindings and asynchronous, non-blocking IO with an end-to-end developer workflow that promotes clean practices, uniform interface design and consistent data modeling.

1633 Stars

Rapidoid

Simple, secure and extremely fast framework consisting of an embedded HTTP server, GUI components and dependency injection.

1143 Stars

RESTEasy

Fully certified and portable implementation of the JAX-RS specification.

1023 Stars

Elide

Opinionated framework for JSON- or GraphQL-APIs based on a JPA data model.

939 Stars

RestExpress

Thin wrapper on the JBoss Netty HTTP stack that provides scaling and performance.

726 Stars

Jersey

JAX-RS reference implementation.

663 Stars

Restlet Framework

Pioneering framework with powerful routing and filtering capabilities, and a unified client and server API.

294 Stars

Crnk

Implementation of the JSON API specification to build resource-oriented REST endpoints with sorting, filtering, paging, linking, object graphs, type-safety, bulk updates, integrations and more.

0 Stars

Microserver

Convenient, extensible microservices plugin system for Spring & Spring Boot. With more than 30 plugins and growing, it supports both micro-monolith and pure microservices styles.

Science

Libraries for scientific computing, analysis and visualization.

3749 Stars

Tablesaw

Includes a data-frame, an embedded column store, and hundreds of methods to transform, summarize, or filter data.

2771 Stars

JGraphT

Graph library that provides mathematical graph-theory objects and algorithms.

1582 Stars

XChart

Light-weight library for plotting data. Many customizable chart types are available.

1381 Stars

JFreeChart

2D chart library for Swing, JavaFX and server-side applications. (LGPL-2.1-only)

692 Stars

JGraphX

Library for visualizing (mainly Swing) and interacting with node-edge graphs.

622 Stars

BioJava

Facilitates processing biological data by providing algorithms, file format parsers, sequencing and 3D visualization commonly used in bioinformatics.

594 Stars

Chart-FX

Scientific charting library with focus on performance optimised real-time data visualisation at 25 Hz update rates for large data sets.

425 Stars

GraphStream

Library for modeling and analyzing dynamic graphs.

245 Stars

Morpheus

Provides a versatile two-dimensional memory efficient tabular data structure called a DataFrame to enable efficient in-memory analytics for scientific computing on the JVM.

152 Stars

LogicNG

Library for creating, manipulating and solving Boolean and Pseudo-Boolean formulas.

127 Stars

Erdos

Modular, light and easy graph framework for theoretic algorithms.

122 Stars

Orson-Charts

Generates a wide variety of 3D charts that can be displayed with Swing and JavaFX or exported to PDF, SVG, PNG and JPEG. (GPL-3.0-only)

84 Stars

Mines Java Toolkit

Library for geophysical scientific computation, visualization and digital signal analysis.

Search

Engines that index documents for search and analysis.

76641 Stars

Elasticsearch

Distributed, multitenant-capable, full-text search engine with a RESTful web interface and schema-free JSON documents.

3418 Stars

Apache Lucene

High-performance, full-featured, cross-platform, text search engine library.

1610 Stars

Apache Solr

Enterprise search engine optimized for high-volume traffic.

57 Stars

Indexer4j

Simple and light full text indexing and searching library.

Security

Libraries that handle security, authentication, authorization or session management.

34219 Stars

Keycloak

Integrated SSO and IDM for browser apps and RESTful web services.

15069 Stars

Cryptomator

Multiplatform, transparent, client-side encryption of files in the cloud. (GPL-3.0-only)

11052 Stars

jjwt

JSON web token for Java and Android.

4432 Stars

Apache Shiro

Performs authentication, authorization, cryptography and session management.

2639 Stars

Bouncy Castle

All-purpose cryptographic library and JCA provider offering a wide range of functions, from basic helpers to PGP/SMIME operations.

2624 Stars

Keywhiz

System for distributing and managing secrets.

2518 Stars

pac4j

Security engine.

1962 Stars

Themis

Multi-platform high-level cryptographic library provides easy-to-use encryption for protecting sensitive data: secure messaging with forward secrecy, secure data storage (AES256GCM); suits for building end-to-end encrypted applications.

1325 Stars

Topaz

Fine-grained authorization for applications with support for RBAC, ABAC, and ReBAC.

873 Stars

OpenAM

Access management solution that includes authentication, SSO, authorization, federation, entitlements and web services security.

420 Stars

Password4j

User-friendly cryptographic library that supports Argon2, Bcrypt, Scrypt, PBKDF2 and various other cryptographic hash functions.

311 Stars

Passay

Enforce password policy by validating candidate passwords against a configurable rule set.

309 Stars

Nbvcxz

Advanced password strength estimation.

236 Stars

OTP-Java

One-time password generator library according to RFC 4226 (HOTP) and RFC 6238 (TOTP).

219 Stars

Hdiv

Runtime application that repels application security risks included in the OWASP Top 10, including SQL injection, cross-site scripting, cross-site request forgery, data tampering, and brute force attacks.

219 Stars

Kalium

Binding for the Networking and Cryptography (NaCl) library.

205 Stars

Jwks RSA

JSON Web Key Set parser.

109 Stars

OACC

Provides permission-based authorization services.

50 Stars

DependencyCheck

Detects publicly disclosed vulnerabilities contained within a project's dependencies.

48 Stars

SecurityBuilder

Fluent Builder API for JCA and JSSE classes and especially X.509 certificates.

14 Stars

jwt-java

Easily create and parse JSON Web Tokens and create customized JWT validators using a fluent API.

0 Stars

SSLContext-Kickstart

High-level SSL context builder for configuring HTTP clients with SSL/TLS.

0 Stars

Tink

Provides a simple and misuse-proof API for common cryptographic tasks.

Serialization

Libraries that handle serialization with high efficiency.

25867 Stars

FlatBuffers

Memory-efficient serialization library that can access serialized data without unpacking and parsing it.

6516 Stars

Kryo

Fast and efficient object graph serialization framework.

1596 Stars

FST

JDK-compatible, high-performance object graph serialization.

1465 Stars

MessagePack

Efficient binary serialization format.

19 Stars

PHP Serializer

Serializing objects in the PHP serialization format.

0 Stars

Fury

A blazing fast multi-language serialization framework powered by jit and zero-copy.

Server

Servers specifically used to deploy applications.

8163 Stars

Apache Tomcat

Robust, all-round server for Servlet and JSP.

7211 Stars

nanohttpd

Tiny, easily embeddable HTTP server.

4077 Stars

Jetty

Provides a Web server and javax.servlet container, plus support for HTTP/2, WebSocket, OSGi, JMX, JNDI, JAAS and many other integrations.

3165 Stars

WildFly

Formerly known as JBoss and developed by Red Hat with extensive Java EE support. (LGPL-2.1-only)

473 Stars

Apache TomEE

Tomcat plus Java EE.

Template Engine

Tools that substitute expressions in a template.

2959 Stars

Thymeleaf

Aims to be a substitute for JSP and works for XML files.

1552 Stars

Handlebars.java

Logicless and semantic Mustache templates.

1184 Stars

Pebble

Inspired by Twig and separates itself with its inheritance feature and its easy-to-read syntax. It ships with built-in autoescaping for security and it includes integrated support for internationalization.

1105 Stars

jte

Compiles to classes, and uses an easy syntax, several features to make development easier and provides fast execution and a small footprint.

1094 Stars

Freemarker

Library to generate text output (HTML web pages, e-mails, configuration files, source code, etc.) based on templates and changing data.

1031 Stars

StringTemplate

Template engine for generating source code, web pages, emails, or any other formatted text output.

781 Stars

Rocker

Optimized, memory efficient and speedy template engine producing statically typed, plain objects.

707 Stars

Jade4J

Implementation of Pug (formerly known as Jade).

330 Stars

jstachio

Typesafe Mustache templating engine.

300 Stars

Jtwig

Modular, configurable and fully tested template engine.

67 Stars

Jamal

Extendable template engine embedded into Maven/JavaDoc, supporting multiple extensions (Groovy, Ruby, JavaScript, JShell, PlantUml) with support for snippet handling.

Testing

Tools that test from model to the view.

BDD

Testing for the software development process that emerged from TDD and was heavily influenced by DDD and OOAD.

2806 Stars

Cucumber

Provides a way to describe features in a plain language which customers can understand.

752 Stars

Serenity BDD

Automated Acceptance testing and reporting library that works with Cucumber, JBehave and JUnit to make it easier to write high quality executable specifications.

460 Stars

JGiven

Provides a fluent API which allows for simpler composition.

253 Stars

Lamdba Behave

Aims to provide a fluent API to write tests in long and descriptive sentences that read like plain English.

160 Stars

JBehave

Extensively configurable framework that describes stories.

111 Stars

Cukes-REST

Collection of Gherkin steps for REST-service testing using Cucumber.

49 Stars

J8Spec

Follows a Jasmine-like syntax.

Fixtures

Everything related to the creation and handling of random data.

4915 Stars

Java Faker

Port of Ruby's fake data generator.

1135 Stars

Instancio

Automates data setup in unit tests by generating fully-populated, reproducible objects. Includes JUnit 5 extension.

535 Stars

Mockneat

Another fake data generator.

444 Stars

Fixture Factory

Generates fake objects from a template.

182 Stars

Randomized Testing

JUnit test runner and plugins for running JUnit tests with pseudo-randomness.

122 Stars

Beanmother

Sets up beans from YAML fixtures.

0 Stars

jFairy

Fake data generator.

Frameworks

Provide environments to run tests for a specific use case.

9375 Stars

Apache JMeter

Functional testing and performance measurements.

6897 Stars

Gatling

Load testing tool designed for ease of use, maintainability and high performance.

3688 Stars

ArchUnit

Test library for specifying and asserting architecture rules.

1816 Stars

PIT

Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test suites.

1128 Stars

Pact JVM

Consumer-driven contract testing.

651 Stars

jqwik

Engine for property-based testing built on JUnit 5.

483 Stars

Citrus

Integration testing framework that focuses on both client- and server-side messaging.

384 Stars

Arquillian

Integration and functional testing platform for Java EE containers.

0 Stars

JUnit

Common testing framework.

Matchers

Libraries that provide custom matchers.

2822 Stars

AssertJ

Fluent assertions that improve readability.

2787 Stars

Truth

Google's fluent assertion and proposition framework.

2188 Stars

Hamcrest

Matchers that can be combined to create flexible expressions of intent.

1054 Stars

JSONAssert

Simplifies testing JSON strings.

992 Stars

JsonUnit

Library that simplifies JSON comparison in tests.

314 Stars

XMLUnit

Simplifies testing for XML output.

Miscellaneous

Other stuff related to testing.

8634 Stars

TestContainers

Provides throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

428 Stars

LogCaptor

Captures log entries for unit testing purposes.

248 Stars

junit-dataprovider

TestNG-like data provider/runner for JUnit.

244 Stars

Mutability Detector

Reports whether instances of a given class are immutable.

73 Stars

raml-tester

Tests if a request/response matches a given RAML definition.

52 Stars

pojo-tester

Automatically performs tests on basic POJO methods. (LGPL-3.0-only)

33 Stars

ConsoleCaptor

Captures console output for unit testing purposes.

15 Stars

log-capture

Captures log entries and provides assertions for unit and integration testing.

Mocking

Tools which mock collaborators to help testing single, isolated units.

15430 Stars

Mockito

Mocking framework that lets you write tests with a clean and simple API.

7231 Stars

WireMock

Stubs and mocks web services.

4438 Stars

Moco

Concise web services for stubs and mocks.

4182 Stars

PowerMock

Mocks static methods, constructors, final classes and methods, private methods, and removal of static initializers.

473 Stars

JMockit

Integration testing, API mocking and faking, and code coverage.

0 Stars

MockServer

Allows mocking of systems integrated with HTTPS.

Utility

Libraries which provide general utility functions.

51493 Stars

Guava

Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and more.

37288 Stars

Arthas

Allows to troubleshoot production issues for applications without modifying code or restarting servers.

6483 Stars

Gephi

Cross-platform for visualizing and manipulating large graph networks. (GPL-3.0-only)

2746 Stars

bucket4j

Rate limiting library based on token-bucket algorithm.

2626 Stars

JavaVerbalExpressions

Library that helps with constructing difficult regular expressions.

1782 Stars

Embulk

Bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services.

1526 Stars

Java Diff Utils

Utilities for text or data comparison and patching.

1345 Stars

Protégé

Provides an ontology editor and a framework to build knowledge-based systems.

1319 Stars

Dex

Java/JavaFX tool capable of powerful ETL and data visualization.

1295 Stars

minio-java

Provides simple APIs to access any Amazon S3-compatible object storage server.

941 Stars

CRaSH

Provides a shell into a JVM that's running CRaSH. Used by Spring Boot and others. (LGPL-2.1-or-later)

776 Stars

cactoos

Collection of object-oriented primitives.

551 Stars

Underscore-java

Port of Underscore.js functions.

47 Stars

Chocotea

Generates postman collection, environment and integration tests from java code.

42 Stars

JGit

Lightweight, pure Java library implementing the Git version control system.

32 Stars

fswatch

Micro library to watch for directory file system changes, simplifying java.nio.file.WatchService.

Version Managers

Utilities that help create the development shell environment and switch between different Java versions.

6747 Stars

SDKMan

Java Version Manager inspired by RVM and rbenv. Supports UNIX-based platforms.

6590 Stars

jenv

Java Version Manager inspired by rbenv. Can configure globally or per project. Tested on Debian and macOS.

3399 Stars

jabba

Java Version Manager inspired by nvm. Supports macOS, Linux and Windows.

Web Crawling

Libraries that analyze the content of websites.

11684 Stars

webmagic

Scalable crawler with downloading, url management, content extraction and persistent.

11361 Stars

jsoup

Scrapes, parses, manipulates and cleans HTML.

4623 Stars

Crawler4j

Simple and lightweight web crawler.

3148 Stars

Apache Nutch

Highly extensible, highly scalable web crawler for production environments.

0 Stars

StormCrawler

SDK for building low-latency and scalable web crawlers.

Web Frameworks

Frameworks that handle the communication between the layers of a web application.

12622 Stars

Play

Built on Akka, it provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications in Java and Scala.

8262 Stars

Javalin

Microframework for web applications.

5882 Stars

Blade

Lightweight, modular framework that aims to be elegant and simple.

1949 Stars

Ratpack

Set of libraries that facilitate fast, efficient, evolvable and well-tested HTTP applications.

1902 Stars

Ninja

Full-stack web framework.

1900 Stars

PrimeFaces

JSF framework with both free and commercial/support versions and frontend components.

1804 Stars

Vaadin

Event-driven framework that uses standard web components. Server-side architecture with Ajax on the client side.

1774 Stars

Jooby

Scalable, fast and modular micro-framework that offers multiple programming models.

1429 Stars

Bootique

Minimally opinionated framework for runnable apps.

990 Stars

ActiveJ

Lightweight asynchronous framework built from the ground up for developing high-performance web applications.

877 Stars

Takes

Opinionated web framework which is built around the concepts of True Object-Oriented Programming and immutability.

787 Stars

Apache Wicket

Component-based web application framework similar to Tapestry, with a stateful GUI.

784 Stars

Pippo

Small, highly modularized, Sinatra-like framework.

297 Stars

Firefly

Asynchronous framework for rapid development of high-performance web application.

132 Stars

Apache Tapestry

Component-oriented framework for creating dynamic, robust, highly scalable web applications.

About

Created by @ResamVi. You can find the code here. Theme made by Lexington Themes.