An open API service indexing awesome lists of open source software.

awesome-java

A curated list of awesome frameworks, libraries and software for the Java programming language.
https://github.com/akullpp/awesome-java

Last synced: 8 days ago
JSON representation

  • Projects

    • Infer
    • Telosys - 3.0</kbd> 🟠<br>Java code-generation toolkit with a CLI and model-driven template engine.
    • HSQLDB
    • Realm - 2.0</kbd> 🔴<br>Mobile database to run directly inside phones, tablets or wearables.
    • requery - 2.0</kbd> 🟠<br>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.
    • Inversion of Control
    • JMLOK 2.0 - directed random tests generation, and suggests a likely cause for each nonconformance detected. (GPL-3.0-only)
    • Apache HttpComponents - level Java components focused on HTTP and related protocols.
    • Visual Studio Code Java
    • ZXing - 2.0</kbd> 🟢<br>Multi-format 1D/2D barcode image processing library.
    • Gson - 2.0</kbd> 🟢<br>Serializes objects to JSON and vice versa. Good performance with on-the-fly usage.
    • Jackson
    • Moshi - 2.0</kbd> 🟢<br>Modern JSON library, less opinionated and uses built-in types like List and Map.
    • Corretto - cost, multiplatform, production-ready distribution of OpenJDK by Amazon. (GPL-2.0-only WITH Classpath-exception-2.0)
    • RedHat Open JDK - 2.0-only WITH Classpath-exception-2.0)
    • JObfuscator
    • Svix
    • hippo4j - 2.0</kbd> 🟠<br>Dynamic and observable thread pool framework.
    • AWS Elastic Beanstalk - based, with support for Tomcat and Jetty.
    • AWS Lambda
    • ClassScan
    • CLI2
    • Convert - Convert aims to provide a single library dedicated to the task of converting an object of one type to another.
    • Finder
    • Flatfile
    • I18n
    • Id
    • Javaflow
    • JNet
    • Monitoring
    • Nabla
    • OpenPGP
    • Performance
    • Pipeline
    • RxJava - 2.0</kbd> 🟢<br>Allows for composing asynchronous and event-based programs using observable sequences.
    • DataMelt - 3.0-or-later)
    • Themis - 2.0</kbd> 🟠<br>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.
    • Guava - 2.0</kbd> 🟢<br>Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and more.
    • JADE - agent systems. (LGPL-2.0-only)
    • MapStruct - over-configuration approach.
    • ModelMapper - 2.0</kbd> 🟠<br>Intelligent object mapping library that automatically maps objects to each other.
    • reMap - 2.0</kbd> 🟢<br>Lambda and method handle-based mapping which requires code and not annotations if objects have different names.
    • bytecode-viewer - 3.0</kbd> 🟢<br>Java 8 Jar & Android APK reverse engineering suite.
    • Javassist
    • Maker - 2.0</kbd> 🟢<br>Provides low level bytecode generation.
    • Caffeine - 2.0</kbd> 🟢<br>High-performance, near-optimal caching library.
    • jbock
    • JLine
    • Jansi - 2.0</kbd> 🟠<br>ANSI escape codes to format console output.
    • Jexer - draggable windows, built-in terminal window manager, and sixel image support. Looks like [Turbo Vision](https://en.wikipedia.org/wiki/Turbo_Vision).
    • Lanterna - 3.0</kbd> 🟢<br>Easy console text-GUI library, similar to curses.
    • Checkstyle - 2.1</kbd> 🟢<br>Static analysis of coding conventions and standards.
    • Error Prone - 2.0</kbd> 🟢<br>Catches common programming mistakes as compile-time errors.
    • Error Prone Support
    • NullAway - time overhead.
    • PMD
    • SonarJava - 3.0-only)
    • Spoon
    • Spotbugs - 2.1</kbd> 🟢<br>Static analysis of bytecode to find potential bugs.
    • Auto - 2.0</kbd> 🟢<br>Generates factory, service, and value classes.
    • Geci - 2.0</kbd> 🟠<br>Discovers files that need generated code, updates automatically and writes to the source with a convenient API.
    • JHipster - 2.0</kbd> 🟢<br>Yeoman source code generator for Spring Boot and AngularJS.
    • Record-Builder - 2.0</kbd> 🟢<br>Companion builder class, withers and templates for Java records.
    • JavaCV
    • centraldogma - 2.0</kbd> 🟢<br>Highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2.
    • config
    • Configurate - 2.0</kbd> 🟢<br>Configuration library with support for various configuration formats and transformations.
    • dotenv - factor configuration library which uses environment-specific files.
    • Externalized Properties - 2.0</kbd> 🟢<br>Simple, lightweight, yet powerful configuration library which supports resolution of properties from external sources such as files, databases, git repositories, and any custom sources, plus an extensible post-processing/conversion mechanism.
    • Gestalt - 2.0</kbd> 🟢<br>Gestalt offers a comprehensive solution to the challenges of configuration management. It allows you to source configuration data from multiple inputs, merge them intelligently, and present them in a structured, type-safe manner.
    • KAConf - 2.0</kbd> 🔴<br>Annotation-based configuration system for Java and Kotlin.
    • JaCoP - 3.0)
    • FastCSV - optimized, dependency-free and RFC 4180 compliant.
    • Persistent Collection
    • Protobuf
    • RoaringBitmap - 2.0</kbd> 🟢<br>Fast and efficient compressed bitmap.
    • Wire - 2.0</kbd> 🟢<br>Clean, lightweight protocol buffers.
    • ArangoDB - 2.0</kbd> 🟢<br>ArangoDB Java driver.
    • Chronicle Map - 2.0</kbd> 🟢<br>Efficient, in-memory (opt. persisted to disk), off-heap key-value store.
    • eXist - 2.1</kbd> 🟢<br>NoSQL document database and application platform.
    • FlexyPool - 2.0</kbd> 🟠<br>Brings metrics and failover strategies to the most common connection pooling solutions.
    • HikariCP - 2.0</kbd> 🟠<br>High-performance JDBC connection pool.
    • Jinq
    • MariaDB4j - 2.0</kbd> 🟢<br>Launcher for MariaDB that requires no installation or external dependencies.
    • Modality - 2.0</kbd> 🟢<br>Lightweight ORM with database reverse engineering features.
    • OpenDJ
    • QueryStream - 2.0</kbd> 🔴<br>Build JPA Criteria queries using a Stream-like API.
    • QuestDB - 2.0</kbd> 🟢<br>High-performance SQL database for time series. Supports InfluxDB line protocol, PostgreSQL wire protocol, and REST.
    • Redisson - 2.0</kbd> 🟢<br>Allows for distributed and scalable data structures on top of a Redis server.
    • Spring Data JPA MongoDB Expressions - 2.0</kbd> 🟠<br>Allows you to use MongoDB query language to query your relational database.
    • Xodus - 2.0</kbd> 🟢<br>Highly concurrent transactional schema-less and ACID-compliant embedded database.
    • CosId - 2.0</kbd> 🟢<br>Universal, flexible, high-performance distributed ID generator.
    • iCal4j - 3-Clause</kbd> 🟢<br>Parse and build iCalendar [RFC 5545](https://tools.ietf.org/html/rfc5545) data models.
    • ThreeTen-Extra - 3-Clause</kbd> 🟢<br>Additional date-time classes that complement those in JDK 8.
    • Time4J - 2.1</kbd> 🔴<br>Advanced date and time library.
    • Governator - 2.0</kbd> 🟠<br>Extensions and utilities that enhance Google Guice.
    • Guice - 2.0</kbd> 🟢<br>Lightweight and opinionated framework that completes Dagger.
    • Faux Pas
    • HotswapAgent - 2.0</kbd> 🟢<br>Unlimited runtime class and resource redefinition.
    • JavaParser
    • Manifold - 2.0</kbd> 🟢<br>Re-energizes Java with powerful features like type-safe metaprogramming, structural typing and extension methods.
    • SneakyThrow
    • Dropwizard Circuit Breaker - 2.0</kbd> 🟠<br>Circuit breaker design pattern for Dropwizard.
    • Hazelcast - memory datagrid with a free open-source version.
    • ArchUnit - 2.0</kbd> 🟢<br>Test library for specifying and asserting architecture rules.
    • jMolecules - 2.0</kbd> 🟠<br>Annotations and interfaces to express design and architecture concepts in code.
    • Buck2 - 2.0</kbd> 🟢<br>Encourages the creation of small, reusable modules consisting of code and resources.
    • LangChain4j - 2.0</kbd> 🟢<br>Simplifies integration of LLMs with unified APIs and a comprehensive toolbox.
    • MCP Java SDK
    • Google Cloud Client Libraries - 2.0</kbd> 🟢<br>Client libraries for accessing Google Cloud services from Java applications.
    • ASM - purpose, low-level bytecode manipulation and analysis.
    • simple-openai
    • EasyEntityToDTO
    • JSpecify Package-Info Generator - 2.0</kbd> 🟠<br>Maven plugin that automatically generates package-info.java files with JSpecify annotations (@NullMarked and @NullUnmarked), helping you manage nullness boundaries in your Java projects without manual boilerplate.
    • RefactorFirst - 2.0</kbd> 🟢<br>Identifies and prioritizes God Classes and Highly Coupled classes.
    • Apache ShardingSphere - 2.0</kbd> 🟢<br>Distributed SQL transaction & query engine that allows for data sharding, scaling, encryption, and more on any database.
    • java-tron - 3.0</kbd> 🟢<br>Implementation of the Tron Protocol, whic utilizes blockchains to develop decentralized applications.
    • resilience4j - 2.0</kbd> 🟢<br>Functional fault tolerance library.
    • OpenIG - performance reverse proxy server with specialized session management and credential replay functionality.
    • ScaleCube Services - 2.0</kbd> 🟢<br>Embeddable Cluster-Membership library based on SWIM and gossip protocol.
    • Zuul - 2.0</kbd> 🟢<br>Gateway service that provides dynamic routing, monitoring, resiliency, security, and more.
    • Artipie
    • Getdown - user computers and keeping them up to date. Developed as an alternative to Java Web Start.
    • jlink.online - 2.0</kbd> 🟢<br>Builds optimized runtimes over HTTP.
    • packr - 2.0</kbd> 🔴<br>Packs JARs, assets and the JVM for native distribution on Windows, Linux and macOS.
    • really-executable-jars-maven-plugin - 2.0</kbd> 🟠<br>Maven plugin for making self-executing JARs.
    • fastexcel
    • zerocell - 2.0</kbd> 🔴<br>Annotation-based API for reading data from Excel sheets into POJOs with focus on reduced overhead.
    • Cassandre - 3.0</kbd> 🔴<br>Trading bot framework.
    • Philadelphia - 2.0</kbd> 🟢<br>Low-latency financial information exchange.
    • Stripe
    • ta4j
    • Java Path Finder (JPF)
    • Fugue
    • jOOλ - 2.0</kbd> 🔴<br>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.
    • Packrat - 2.0</kbd> 🟢<br>Gatherers library for Java Stream API. Gatherers can enhance streams with custom intermediate operations.
    • protonpack
    • StreamEx - 2.0</kbd> 🟢<br>Enhances Java 8 Streams.
    • vulkan4j - 3-Clause</kbd> 🔴<br>Vulkan, OpenGL ES2 and GLFW Memory Allocator bindings.
    • Geo - 2.0</kbd> 🟢<br>GeoHash utilities in Java.
    • GraphHopper - 2.0</kbd> 🟢<br>Road-routing engine. Used as a Java library or standalone web service.
    • Mapsforge - 3.0</kbd> 🟢<br>Map rendering based on OpenStreetMap data.
    • Spatial4j - purpose spatial/geospatial library.
    • SnapKit
    • JCTools - 2.0</kbd> 🟢<br>Concurrency tools currently missing from the JDK.
    • Async Http Client - 2.0</kbd> 🟢<br>Asynchronous HTTP and WebSocket client library.
    • Feign - 2.0</kbd> 🟢<br>HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.
    • Google HTTP Client - 2.0</kbd> 🟢<br>Pluggable HTTP transport abstraction with support for java.net.HttpURLConnection, Apache HTTP Client, Android, Google App Engine, XML, Gson, Jackson and Protobuf.
    • methanol
    • Ribbon - 2.0</kbd> 🟠<br>Client-side IPC library that is battle-tested in the cloud.
    • Riptide - side response routing for Spring's RestTemplate.
    • unirest-java
    • hate - friendly objects according to HAL specification.
    • Spring HATEOAS - 2.0</kbd> 🟢<br>Standalone and Spring support for building hypermedia-based APIs using HAL, HAL FORMS, Collection+JSON, ALPS and UBER.
    • Barcode-Lib4J - 2.0</kbd> 🟢<br>Generates QR Code, DataMatrix, and other 1D/2D barcodes as vector (PDF, EPS, SVG) and raster (PNG, BMP, JPG) images with DPI awareness, high precision, and CMYK color model support.
    • Imgscalr - 2.0</kbd> 🔴<br>Simple, efficient and hardware-accelerated image-scaling library implemented in pure Java 2D.
    • Tess4J - 2.0</kbd> 🟢<br>JNA wrapper for Tesseract OCR API.
    • Thumbnailator - quality thumbnail generation library.
    • TwelveMonkeys - 3-Clause</kbd> 🟢<br>Collection of plugins that extend the number of supported image file formats.
    • image-comparison - 2.0</kbd> 🟢<br>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.
    • vips-ffm - 2.0</kbd> 🟢<br>Comprehensive bindings for libvips, using Java's "Foreign Function & Memory" API.
    • ClassGraph - fast, ultra-lightweight, parallelized classpath scanner and module scanner for Java, Scala, Kotlin and other JVM languages.
    • jOOR - 2.0</kbd> 🔴<br>jOOR stands for jOOR Object Oriented Reflection. It is a simple wrapper for the java.lang.reflect package.
    • ReflectASM - 3-Clause</kbd> 🔴<br>ReflectASM is a very small Java library that provides high performance reflection by using code generation.
    • JobRunr - and-forget, delayed and recurring jobs. Guarantees execution by single scheduler instance using optimistic locking. Has features for persistence, minimal dependencies and is embeddable.
    • Quartz - 2.0</kbd> 🟢<br>Feature-rich, open source job scheduling library that can be integrated within virtually any Java application.
    • Sundial - 2.0</kbd> 🟠<br>Lightweight framework to simply define jobs, define triggers and start the scheduler.
    • Wisp - 2.0</kbd> 🟠<br>Simple library with minimal footprint and straightforward API.
    • db-scheduler - 2.0</kbd> 🟢<br>Persistent and cluster-friendly scheduler.
    • easy-batch
    • shedlock - 2.0</kbd> 🟢<br>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.
    • DSL-JSON - 3-Clause</kbd> 🟢<br>JSON library with advanced compile time databinding.
    • jackson-modules-java8 - 2.0</kbd> 🟢<br>Set of Jackson modules for Java 8 datatypes and features.
    • JSON-io - 2.0</kbd> 🟢<br>Convert Java to JSON/TOON and back. Supports complex object graphs, cyclic references, and TOON format for 40-50% LLM token savings.
    • Yasson
    • Jolt - 2.0</kbd> 🟢<br>JSON to JSON transformation tool.
    • JsonPath - 2.0</kbd> 🟠<br>Extract data from JSON using XPATH-like syntax.
    • Graal - 2.0-only WITH Classpath-exception-2.0)
    • Microsoft JDK
    • Echopraxia - free, meaning it can be implemented with any logging API.
    • Logbook - source library for HTTP request and response logging.
    • JSAT - 3.0</kbd> 🔴<br>Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution.
    • Neureka - array/tensor library.
    • Siddhi - 2.0</kbd> 🟠<br>Cloud native streaming and complex event processing engine.
    • Smile
    • JeroMQ - 2.0</kbd> 🟠<br>Implementation of ZeroMQ.
    • RabbitMQ Java client
    • Smack - 2.0</kbd> 🟢<br>Cross-platform XMPP client library.
    • NATS client - 2.0</kbd> 🟢<br>NATS client.
    • Armeria - 2.0</kbd> 🟢<br>Asynchronous RPC/REST client/server library built on top of Java 8, Netty, HTTP/2, Thrift and gRPC.
    • Eureka - 2.0</kbd> 🟢<br>REST-based service registry for resilient load balancing and failover.
    • kubernetes-client - 2.0</kbd> 🟢<br>Client provides access to the full Kubernetes & OpenShift REST APIs via a fluent DSL.
    • Sentinel - 2.0</kbd> 🟠<br>Flow control component enabling reliability, resilience and monitoring for microservices.
    • FF4J - 2.0</kbd> 🟢<br>Feature Flags for Java.
    • IP2Location.io Java SDK
    • ISBN core - 10 and ISBN-13 and tools to parse, validate and format one.
    • J2ObjC - to-Objective-C translator for porting Android libraries to iOS.
    • JBot - 3.0</kbd> 🟠<br>Framework for building chatbots.
    • JEmoji - 2.0</kbd> 🟢<br>An auto-generated emoji library that provides type-safe direct access to emojis and alias support for Discord, Slack, GitHub and many more features.
    • Jimfs - 2.0</kbd> 🟢<br>In-memory file system.