awesome-java
A curated list of awesome frameworks, libraries and software for the Java programming language.
42k stars
2k watching
7k forks
last commit: 28 days ago
Linked from 16 awesome lists
awesomeawesome-list
Awesome Java / Projects / Bean Mapping | |||
dOOv | 92 | almost 2 years ago | 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 |
JMapper | 227 | 12 months ago | Uses byte code manipulation for lightning-fast mapping. Supports annotations and API or XML configuration |
MapStruct | 7,069 | 15 days ago | Code generator that simplifies mappings between different bean types, based on a convention-over-configuration approach |
ModelMapper | 2,283 | about 1 month ago | Intelligent object mapping library that automatically maps objects to each other |
Orika | 1,294 | about 2 months ago | JavaBean-mapping framework that recursively copies (among other capabilities) data from one object to another |
reMap | 120 | 2 months ago | Lambda and method handle-based mapping which requires code and not annotations if objects have different names |
Selma | 212 | almost 5 years ago | Annotation processor-based bean mapper |
Awesome Java / Projects / Build | |||
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 | ||
Bazel | Tool from Google that builds code quickly and reliably | ||
Buck | 8,559 | 12 months ago | Encourages the creation of small, reusable modules consisting of code and resources |
Gradle | Incremental builds programmed via Groovy instead of declaring XML. Works well with Maven's dependency management | ||
Awesome Java / Projects / Bytecode Manipulation | |||
ASM | All-purpose, low-level bytecode manipulation and analysis | ||
Byte Buddy | Further simplifies bytecode generation with a fluent API | ||
bytecode-viewer | 14,626 | 12 days ago | Java 8 Jar & Android APK reverse engineering suite. (GPL-3.0-only) |
Byteman | Manipulate bytecode at runtime via DSL (rules); mainly for testing/troubleshooting. (LGPL-2.1-or-later) | ||
cglib | 4,791 | about 2 months ago | Bytecode generation library |
Javassist | 4,099 | 13 days ago | Tries to simplify bytecode editing |
Maker | 55 | 20 days ago | Provides low level bytecode generation |
Mixin | 1,403 | 2 months ago | Manipulate bytecode at runtime using real Java code |
Perses | 66 | about 3 years ago | Dynamically injects failure/latency at the bytecode level according to principles of chaos engineering |
Recaf | JVM reverse engineering toolkit, essentially an IDE for Java bytecode | ||
Awesome Java / Projects / Caching | |||
cache2k | In-memory high performance caching library | ||
Caffeine | 15,761 | 11 days ago | High-performance, near-optimal caching library |
Ehcache | Distributed general-purpose cache | ||
Infinispan | Highly concurrent key/value datastore used for caching | ||
Awesome Java / Projects / CLI | |||
Airline | Annotation-based framework for parsing Git-like command-line arguments | ||
JCommander | Command-line argument-parsing framework with custom types and validation via implementing interfaces | ||
jbock | 86 | 22 days ago | Reflectionless command line parser |
JLine | 1,468 | 11 days ago | Includes features from modern shells like completion or history |
picocli | ANSI colors and styles in usage help with annotation-based POSIX/GNU/any syntax, subcommands, strong typing for both options and positional args | ||
Jansi | 1,112 | 17 days ago | ANSI escape codes to format console output |
Jexer | Advanced console (and Swing) text user interface (TUI) library, with mouse-draggable windows, built-in terminal window manager, and sixel image support. Looks like | ||
Text-IO | 343 | 12 months ago | Aids the creation of full console-based applications |
Lanterna | 2,263 | about 1 month ago | Easy console text-GUI library, similar to curses. (LGPL-3.0-only) |
Awesome Java / Projects / Cluster Management | |||
Apache Aurora | Mesos framework for long-running services and cron jobs | ||
Singularity | Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks | ||
Awesome Java / Projects / Code Analysis | |||
Checkstyle | 8,310 | 11 days ago | Static analysis of coding conventions and standards. (LGPL-2.1-or-later) |
Error Prone | 6,825 | 11 days ago | Catches common programming mistakes as compile-time errors |
Error Prone Support | 189 | 11 days ago | Error Prone extensions: extra bug checkers and a large battery of Refaster templates |
Infer | 14,920 | 11 days ago | Modern static analysis tool for verifying the correctness of code |
jQAssistant | Static code analysis with Neo4J-based query language. (GPL-3.0-only) | ||
NullAway | 3,624 | 12 days ago | Eliminates NullPointerExceptions with low build-time overhead |
PMD | 4,828 | 11 days ago | Source code analysis for finding bad coding practices |
p3c | 30,407 | 2 months ago | Provides Alibaba's coding guidelines for PMD, IDEA and Eclipse |
RefactorFirst | 436 | 13 days ago | Identifies and prioritizes God Classes and Highly Coupled classes |
SonarJava | 1,120 | 11 days ago | Static analyzer for SonarQube & SonarLint. (LGPL-3.0-only) |
Spoon | 1,742 | 11 days ago | Library for analyzing and transforming Java source code |
Spotbugs | 3,471 | 11 days ago | Static analysis of bytecode to find potential bugs. (LGPL-2.1-only) |
Awesome Java / Projects / Code Coverage | |||
Clover | Relies on source-code instrumentation instead of bytecode instrumentation | ||
Cobertura | Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics. (GPL-2.0-only) | ||
JaCoCo | Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation | ||
Awesome Java / Projects / Code Generators | |||
ADT4J | 143 | over 6 years ago | JSR-269 code generator for algebraic data types |
Auto | 10,417 | 12 days ago | Generates factory, service, and value classes |
Avaje Http Server | Generates Lightweight JAX-RS style http servers using Javalin or Helidon (Nima) SE | ||
Bootify | Browser-based Spring Boot app generation with JPA model and REST API | ||
FreeBuilder | 834 | about 1 year ago | Automatically generates the Builder pattern |
Geci | 129 | over 2 years ago | Discovers files that need generated code, updates automatically and writes to the source with a convenient API |
Immutables | Annotation processors to generate simple, safe and consistent value objects | ||
JavaPoet | 10,812 | 12 days ago | API to generate source files |
JHipster | 21,487 | 11 days ago | Yeoman source code generator for Spring Boot and AngularJS |
Joda-Beans | Small framework that adds queryable properties to Java, enhancing JavaBeans | ||
JPA Buddy | 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 | ||
Lombok | Code generator that aims to reduce verbosity | ||
Record-Builder | 730 | 11 days ago | Companion builder class, withers and templates for Java records |
Telosys | Simple and light code generator available as an Eclipse Plugin and also as a CLI | ||
Awesome Java / Projects / Compiler-compiler | |||
ANTLR | Complex full-featured framework for top-down parsing | ||
JavaCC | Parser generator that generates top-down parsers. Allows lexical state switching and permits extended BNF specifications | ||
JFlex | Lexical analyzer generator | ||
Awesome Java / Projects / Computer Vision | |||
BoofCV | Library for image processing, camera calibration, tracking, SFM, MVS, 3D vision, QR Code and much more | ||
ImageJ | Medical image processing application with an API | ||
JavaCV | 7,526 | 2 months ago | Java interface to OpenCV, FFmpeg, and much more |
Awesome Java / Projects / Configuration | |||
avaje config | Loads yaml and properties files, supports dynamic configuration, plugins, file-watching and config event listeners | ||
centraldogma | 599 | 15 days ago | Highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2 |
config | 6,159 | about 2 months ago | Configuration library supporting Java properties, JSON or its human optimized superset HOCON |
Configurate | 369 | 15 days ago | Configuration library with support for various configuration formats and transformations |
Curator Framework | High-level API for Apache ZooKeeper | ||
dotenv | 46 | over 6 years ago | Twelve-factor configuration library which uses environment-specific files |
Externalized Properties | 27 | about 2 months ago | Lightweight yet powerful configuration library which supports resolution of properties from external sources and an extensible post-processing/conversion mechanism |
Gestalt | 78 | 15 days ago | 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 |
ini4j | Provides an API for handling Windows' INI files | ||
KAConf | 60 | about 2 years ago | Annotation-based configuration system for Java and Kotlin |
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 | ||
owner | 915 | 11 days ago | Reduces boilerplate of properties |
Awesome Java / Projects / Constraint Satisfaction Problem Solver | |||
Choco | Off-the-shelf constraint satisfaction problem solver that uses constraint programming techniques | ||
JaCoP | 220 | 10 months ago | Includes an interface for the FlatZinc language, enabling it to execute MiniZinc models. (AGPL-3.0) |
OptaPlanner | Business planning and resource scheduling optimization solver | ||
Timefold | Flexible solver with Spring/Quarkus support and quickstarts for the Vehicle Routing Problem, Maintenance Scheduling, Employee Shift Scheduling and much more | ||
Awesome Java / Projects / CSV | |||
FastCSV | 543 | 14 days ago | Performance-optimized, dependency-free and RFC 4180 compliant |
jackson-dataformat-csv | 194 | almost 7 years ago | Jackson extension for reading and writing CSV |
opencsv | Simple CSV parser | ||
Super CSV | Powerful CSV parser with support for Dozer, Joda-Time and Java 8 | ||
uniVocity-parsers | 905 | about 2 months ago | One of the fastest and most feature-complete parsers. Also comes with parsers for TSV and fixed-width records |
Awesome Java / Projects / Data Structures | |||
Apache Avro | Data interchange format with dynamic typing, untagged data, and absence of manually assigned IDs | ||
Apache Orc | Fast and efficient columnar storage format for Hadoop-based workloads | ||
Apache Parquet | Columnar storage format based on assembly algorithms from Google's paper on Dremel | ||
Apache Thrift | Data interchange format that originated at Facebook | ||
Big Queue | 557 | about 2 years ago | Fast and persistent queue based on memory-mapped files |
HyperMinHash-java | 54 | over 1 year ago | Probabilistic data structure for computing union, intersection, and set cardinality in loglog space |
Persistent Collection | 764 | 7 months ago | Persistent and immutable analogue of the Java Collections Framework |
Protobuf | 65,410 | 3 days ago | Google's data interchange format |
RoaringBitmap | 3,504 | 15 days ago | Fast and efficient compressed bitmap |
SBE | 3,095 | 11 days ago | Simple Binary Encoding, one of the fastest message formats around |
Tape | 2,466 | over 1 year ago | Lightning-fast, transactional, file-based FIFO |
Wire | 4,236 | 11 days ago | Clean, lightweight protocol buffers |
Awesome Java / Projects / Database | |||
Apache Calcite | Dynamic data management framework. It contains many of the pieces that comprise a typical database management system | ||
Apache Drill | Distributed, schema on-the-fly, ANSI SQL query engine for Big Data exploration | ||
Apache Phoenix | High-performance relational database layer over HBase for low-latency applications | ||
ArangoDB | 201 | 22 days ago | ArangoDB Java driver |
Chronicle Map | 2,768 | 12 days ago | Efficient, in-memory (opt. persisted to disk), off-heap key-value store |
Debezium | Low latency data streaming platform for change data capture | ||
druid | High-performance, column-oriented, distributed data store | ||
eXist | 424 | 12 days ago | NoSQL document database and application platform. (LGPL-2.1-only) |
FlexyPool | 1,073 | 8 months ago | Brings metrics and failover strategies to the most common connection pooling solutions |
Flyway | Simple database migration tool | ||
H2 | Small SQL database notable for its in-memory functionality | ||
HikariCP | 19,910 | 19 days ago | High-performance JDBC connection pool |
HSQLDB | HyperSQL 100% Java database | ||
JDBI | Convenient abstraction of JDBC | ||
Jedis | 11,812 | 13 days ago | Small client for interaction with Redis, with methods for commands |
Jest | 2,112 | over 1 year ago | Client for the Elasticsearch REST API |
jetcd | 138 | over 1 year ago | Client library for etcd |
Jinq | 660 | 9 months ago | Typesafe database queries via symbolic execution of Java 8 Lambdas (on top of JPA or jOOQ) |
jOOQ | Generates typesafe code based on SQL schema | ||
Leaf | 6,427 | about 1 year ago | Distributed ID generate service |
Lettuce | Lettuce is a scalable Redis client for building non-blocking Reactive applications | ||
Liquibase | Database-independent library for tracking, managing and applying database schema changes | ||
MapDB | Embedded database engine that provides concurrent collections backed on disk or in off-heap memory | ||
MariaDB4j | 9 | 4 months ago | Launcher for MariaDB that requires no installation or external dependencies |
Modality | 13 | over 1 year ago | Lightweight ORM with database reverse engineering features |
OpenDJ | 366 | 11 days ago | LDAPv3 compliant directory service, developed for the Java platform, providing a high performance, highly available, and secure store for the identities |
Querydsl | Typesafe unified queries | ||
QueryStream | 17 | 11 months ago | Build JPA Criteria queries using a Stream-like API |
QuestDB | 14,381 | 11 days ago | High-performance SQL database for time series. Supports InfluxDB line protocol, PostgreSQL wire protocol, and REST |
Realm | 11,451 | 28 days ago | Mobile database to run directly inside phones, tablets or wearables |
Redisson | 23,265 | 1 day ago | Allows for distributed and scalable data structures on top of a Redis server |
requery | 3,137 | over 2 years ago | 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 |
Speedment | 2,095 | 11 months ago | Database access library that utilizes Java 8's Stream API for querying |
Spring Data JPA MongoDB Expressions | 95 | 3 months ago | Allows you to use MongoDB query language to query your relational database |
Trino | Distributed SQL query engine for big data | ||
Vibur DBCP | JDBC connection pool library with advanced performance monitoring capabilities | ||
Xodus | 1,181 | 15 days ago | Highly concurrent transactional schema-less and ACID-compliant embedded database |
CosId | 475 | 11 days ago | Universal, flexible, high-performance distributed ID generator |
Awesome Java / Projects / Date and Time | |||
iCal4j | 754 | 13 days ago | Parse and build iCalendar data models |
Jollyday | 190 | 5 months ago | Determines the holidays for a given year, country/name and eventually state/region |
ThreeTen-Extra | 394 | 3 months ago | Additional date-time classes that complement those in JDK 8 |
Time4J | 438 | 8 months ago | Advanced date and time library. (LGPL-2.1-only) |
Awesome Java / Projects / Dependency Injection | |||
Apache DeltaSpike | CDI extension framework | ||
Avaje Inject | Microservice-focused compile-time injection framework without reflection | ||
Dagger | Compile-time injection framework without reflection | ||
Feather | 353 | over 6 years ago | Ultra-lightweight, JSR-330-compliant dependency injection library |
Governator | 824 | over 1 year ago | Extensions and utilities that enhance Google Guice |
Guice | 12,482 | 18 days ago | Lightweight and opinionated framework that completes Dagger |
HK2 | Lightweight and dynamic dependency injection framework | ||
JayWire | 56 | over 1 year ago | Lightweight dependency injection framework. (LGPL-3.0-only) |
Awesome Java / Projects / Development | |||
AspectJ | Seamless aspect-oriented programming extension | ||
DCEVM | JVM modification that allows unlimited redefinition of loaded classes at runtime. (GPL-2.0-only) | ||
Faux Pas | 132 | over 1 year ago | 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 |
HotswapAgent | 2,329 | 22 days ago | Unlimited runtime class and resource redefinition. (GPL-2.0-only) |
JavaParser | 5,393 | 11 days ago | Parse, modify and generate Java code |
JavaSymbolSolver | 290 | over 6 years ago | Symbol solver |
Manifold | 2,380 | 12 days ago | Re-energizes Java with powerful features like type-safe metaprogramming, structural typing and extension methods |
NoException | Allows checked exceptions in functional interfaces and converts exceptions to Optional return | ||
SneakyThrow | 76 | almost 5 years ago | Ignores checked exceptions without bytecode manipulation. Can also be used inside Java 8 stream operations |
Tail | Enable infinite recursion using tail call optimization | ||
Awesome Java / Projects / Distributed Applications | |||
Apache Geode | In-memory data management system that provides reliable asynchronous event notifications and guaranteed message delivery | ||
Apache Storm | Realtime computation system | ||
Apache ZooKeeper | Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems | ||
Atomix | Fault-tolerant distributed coordination framework | ||
Axon | Framework for creating CQRS applications | ||
Dropwizard Circuit Breaker | 42 | almost 5 years ago | Circuit breaker design pattern for Dropwizard. (GPL-2.0-only) |
Failsafe | 4,179 | 4 months ago | Simple failure handling with retries and circuit breakers |
Hazelcast | 6,103 | 11 days ago | Highly scalable in-memory datagrid with a free open-source version |
JGroups | Toolkit for reliable messaging and cluster creation | ||
Quasar | Lightweight threads and actors for the JVM | ||
resilience4j | 9,702 | 13 days ago | Functional fault tolerance library |
OpenIG | 75 | 11 days ago | High-performance reverse proxy server with specialized session management and credential replay functionality |
ScaleCube Services | 611 | 3 days ago | Embeddable Cluster-Membership library based on SWIM and gossip protocol |
Zuul | 13,458 | 11 days ago | Gateway service that provides dynamic routing, monitoring, resiliency, security, and more |
Awesome Java / Projects / Distributed Transactions | |||
Atomikos | Provides transactions for REST, SOA and microservices with support for JTA and XA | ||
Bitronix | 425 | 8 months ago | Simple but complete implementation of the JTA 1.1 API |
Narayana | Provides support for traditional ACID and compensation transactions, also complies with JTA, JTS and other standards. (LGPL-2.1-only) | ||
Seata | 25,251 | 12 days ago | Delivers high performance and easy to use distributed transaction services under a microservices architecture |
Awesome Java / Projects / Distribution | |||
Artipie | 506 | 13 days ago | Binary artifact management toolkit which hosts them on the file system or S3 |
Boxfuse | Deployment of JVM applications to AWS using the principles of immutable infrastructure | ||
Capsule | 1,148 | over 2 years ago | Simple and powerful packaging and deployment. A fat JAR on steroids, or a "Docker for Java" that supports JVM-optimized containers |
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 | ||
Cloudsmith | Fully managed package management SaaS with support for Maven/Gradle/SBT with a free tier | ||
Getdown | 503 | 10 months ago | System for deploying Java applications to end-user computers and keeping them up to date. Developed as an alternative to Java Web Start |
IzPack | Setup authoring tool for cross-platform deployments | ||
JavaPackager | 1,041 | about 1 month ago | Maven and Gradle plugin which provides an easy way to package Java applications in native Windows, macOS or GNU/Linux executables, and generate installers for them |
jDeploy | Deploy desktop apps as native Mac, Windows or Linux bundles | ||
jlink.online | 45 | 5 months ago | Builds optimized runtimes over HTTP |
Nexus | Binary management with proxy and caching capabilities | ||
packr | 2,557 | 6 months ago | Packs JARs, assets and the JVM for native distribution on Windows, Linux and macOS |
really-executable-jars-maven-plugin | 125 | 12 months ago | Maven plugin for making self-executing JARs |
Awesome Java / Projects / Document Processing | |||
Apache POI | Supports OOXML (XLSX, DOCX, PPTX) as well as OLE2 (XLS, DOC or PPT) | ||
documents4j | API for document format conversion using third-party converters such as MS Word | ||
docx4j | Create and manipulate Microsoft Open XML files | ||
fastexcel | 677 | 11 days ago | High performance library to read and write large Excel (XLSX) worksheets |
zerocell | 80 | 3 months ago | Annotation-based API for reading data from Excel sheets into POJOs with focus on reduced overhead |
Awesome Java / Projects / Financial | |||
Cassandre | 581 | 12 days ago | Trading bot framework |
Parity | 500 | over 2 years ago | Platform for trading venues |
Philadelphia | 322 | 12 days ago | Low-latency financial information exchange |
Square | 39 | over 3 years ago | Integration with the Square API |
Stripe | 806 | 11 days ago | Integration with the Stripe API |
ta4j | 2,043 | 12 days ago | Library for technical analysis |
Awesome Java / Projects / Formal Verification | |||
CATG | 102 | over 6 years ago | Concolic unit testing engine. Automatically generates unit tests using formal methods |
Checker Framework | Pluggable type systems. Includes nullness types, physical units, immutability types and more. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
Daikon | Detects likely program invariants and generates JML specs based on those invariants | ||
Java Path Finder (JPF) | 527 | 23 days ago | JVM formal verification tool containing a model checker and more. Created by NASA |
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) | ||
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) | ||
OpenJML | Translates JML specifications into SMT-LIB format and passes the proof problems implied by the program to backend solvers. (GPL-2.0-only) | ||
Awesome Java / Projects / Functional Programming | |||
Cyclops | 1,311 | over 1 year ago | Monad and stream utilities, comprehensions, pattern matching, functional extensions for all JDK collections, future streams, trampolines and much more |
derive4j | 566 | almost 2 years ago | Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching and morphisms. (GPL-3.0-only) |
Fugue | Functional extensions to Guava | ||
Functional Java | Implements numerous basic and advanced programming abstractions that assist composition-oriented development | ||
jOOλ | 2,083 | 2 months ago | 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 |
protonpack | 479 | 5 months ago | Collection of stream utilities |
StreamEx | 2,189 | 27 days ago | Enhances Java 8 Streams |
Vavr | Functional component library that provides persistent data types and functional control structures | ||
Awesome Java / Projects / Game Development | |||
FXGL | JavaFX Game Development Framework | ||
JBox2D | Port of the renowned C++ 2D physics engine | ||
jMonkeyEngine | Game engine for modern 3D development | ||
libGDX | All-round cross-platform, high-level framework | ||
Litiengine | AWT-based, lightweight 2D game engine | ||
LWJGL | Robust framework that abstracts libraries like OpenGL/CL/AL | ||
Mini2Dx | Beginner-friendly, master-ready framework for rapidly prototyping and building 2D games | ||
Void2D | High-level 2D game engine with built-in physics based on Swing | ||
Awesome Java / Projects / Geospatial | |||
Apache SIS | Library for developing geospatial applications | ||
ArcGIS Maps SDK for Java | 112 | 11 days ago | JavaFX library for adding mapping and GIS functionality to desktop apps |
Geo | 409 | 11 days ago | GeoHash utilities in Java |
GeoTools | Library that provides tools for geospatial data. (LGPL-2.1-only) | ||
GraphHopper | 5,238 | 12 days ago | Road-routing engine. Used as a Java library or standalone web service |
H2GIS | Spatial extension of the H2 database. (LGPL-3.0-only) | ||
Jgeohash | Library for using the GeoHash algorithm | ||
Mapsforge | 1,182 | 21 days ago | Map rendering based on OpenStreetMap data. (LGPL-3.0-only) |
Spatial4j | 932 | over 1 year ago | General-purpose spatial/geospatial library |
Awesome Java / Projects / GUI | |||
JavaFX | Successor of Swing | ||
Scene Builder | Visual layout tool for JavaFX applications | ||
SnapKit | 249 | 12 days ago | Modern Java UI library for both desktop and web |
SWT | Graphical widget toolkit | ||
Awesome Java / Projects / High Performance | |||
Agrona | 2,846 | 11 days ago | Data structures and utility methods that are common in high-performance applications |
Disruptor | Inter-thread messaging library | ||
Eclipse Collections | 2,426 | 12 days ago | Collections framework inspired by Smalltalk |
fastutil | Fast and compact type-specific collections | ||
HPPC | Primitive collections | ||
JCTools | 3,560 | 4 months ago | Concurrency tools currently missing from the JDK |
Koloboke | 1,004 | over 7 years ago | Carefully designed extension of the Java Collections Framework with primitive specializations and more |
Awesome Java / Projects / HTTP Clients | |||
Apache HttpComponents | Toolset of low-level Java components focused on HTTP and associated protocols | ||
Async Http Client | 6,273 | 11 days ago | Asynchronous HTTP and WebSocket client library |
Avaje Http Client | Wrapper on JDK 11's HttpClient that adds Feign-like interface among other enhancements | ||
Feign | 9,451 | 4 days ago | HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket |
Google HTTP Client | 1,386 | 29 days ago | Pluggable HTTP transport abstraction with support for java.net.HttpURLConnection, Apache HTTP Client, Android, Google App Engine, XML, Gson, Jackson and Protobuf |
methanol | 235 | 22 days ago | HTTP client extensions library |
Retrofit | Typesafe REST client | ||
Ribbon | 4,561 | 3 months ago | Client-side IPC library that is battle-tested in the cloud |
Riptide | 295 | 11 days ago | Client-side response routing for Spring's RestTemplate |
unirest-java | 2,605 | about 1 month ago | Simplified, lightweight HTTP client library |
Awesome Java / Projects / Hypermedia Types | |||
hate | 22 | 11 months ago | Builds hypermedia-friendly objects according to HAL specification |
JSON-LD | 375 | 9 months ago | JSON-LD implementation |
Siren4J | 25 | 5 months ago | Library for the Siren specification |
Awesome Java / Projects / IDE | |||
Eclipse | Established open-source project with support for lots of plugins and languages | ||
IntelliJ IDEA | Supports many JVM languages and provides good options for Android development. The commercial edition targets the enterprise sector | ||
jGRASP | Created to provide software visualizations that work in conjunction with the debugger such as Control Structure Diagrams, UML class diagrams and Object Viewer | ||
NetBeans | Provides integration for several Java SE and EE features, from database access to HTML5 | ||
SnapCode | Modern IDE for Java running in the browser, focused on education | ||
Visual Studio Code | Provides Java support for lightweight projects with a simple, modern workflow by using extensions from the internal marketplace | ||
Awesome Java / Projects / Imagery | |||
Imgscalr | 1,227 | 12 months ago | Simple, efficient and hardware-accelerated image-scaling library implemented in pure Java 2D |
Tess4J | 1,590 | about 2 months ago | JNA wrapper for Tesseract OCR API |
Thumbnailator | 5,157 | 8 months ago | High-quality thumbnail generation library |
TwelveMonkeys | 1,886 | 11 days ago | Collection of plugins that extend the number of supported image file formats |
ZXing | 32,698 | 12 days ago | Multi-format 1D/2D barcode image processing library |
image-comparison | 338 | 4 months ago | 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 |
Awesome Java / Projects / Introspection | |||
ClassGraph | 2,739 | 25 days ago | ClassGraph (formerly FastClasspathScanner) is an uber-fast, ultra-lightweight, parallelized classpath scanner and module scanner for Java, Scala, Kotlin and other JVM languages |
jOOR | 2,803 | 2 months ago | jOOR stands for jOOR Object Oriented Reflection. It is a simple wrapper for the java.lang.reflect package |
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 | ||
Objenesis | Allows dynamic instantiation without default constructor, e.g. constructors which have required arguments, side effects or throw exceptions | ||
ReflectASM | 1,525 | over 1 year ago | ReflectASM is a very small Java library that provides high performance reflection by using code generation |
Reflections | 4,716 | 4 months ago | 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 |
Awesome Java / Projects / Job Scheduling | |||
JobRunr | 2,344 | 11 days ago | 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 |
Quartz | 6,245 | 15 days ago | Feature-rich, open source job scheduling library that can be integrated within virtually any Java application |
Sundial | 269 | 3 months ago | Lightweight framework to simply define jobs, define triggers and start the scheduler |
Wisp | 132 | about 1 month ago | Simple library with minimal footprint and straightforward API |
db-scheduler | 1,235 | 15 days ago | Persistent and cluster-friendly scheduler |
easy-batch | 608 | over 1 year ago | 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 |
shedlock | 3,611 | 11 days ago | 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 |
Awesome Java / Projects / JSON | |||
Avaje Jsonb | Reflection-free Json binding via source code generation with Jackson-like annotations | ||
DSL-JSON | 1,008 | 8 months ago | JSON library with advanced compile time databinding |
Genson | Powerful and easy-to-use Java-to-JSON conversion library | ||
Gson | 23,294 | 11 days ago | Serializes objects to JSON and vice versa. Good performance with on-the-fly usage |
HikariJSON | 461 | over 1 year ago | High-performance JSON parser, 2x faster than Jackson |
jackson-modules-java8 | 399 | 13 days ago | Set of Jackson modules for Java 8 datatypes and features |
Jackson-datatype-money | 250 | 2 months ago | Open-source Jackson module to support JSON serialization and deserialization of JavaMoney data types |
Jackson | 9,057 | 3 months ago | Similar to GSON, but offers performance gains if you need to instantiate the library more often |
JSON-io | 330 | 12 days ago | Convert Java to JSON. Convert JSON to Java. Pretty print JSON. Java JSON serializer |
jsoniter | Fast and flexible library with iterator and lazy parsing API | ||
LoganSquare | 3,210 | almost 3 years ago | JSON parsing and serializing library based on Jackson's streaming API. Outperforms GSON & Jackson's library |
Moshi | 9,731 | 19 days ago | Modern JSON library, less opinionated and uses built-in types like List and Map |
Yasson | 201 | about 2 months ago | Binding layer between classes and JSON documents similar to JAXB |
fastjson | 25,723 | 3 months ago | Very fast processor with no additional dependencies and full data binding |
Jolt | 1,548 | 3 months ago | JSON to JSON transformation tool |
JsonPath | 8,895 | 2 months ago | Extract data from JSON using XPATH-like syntax |
JsonSurfer | 293 | 4 months ago | Streaming JsonPath processor dedicated to processing big and complicated JSON data |
Awesome Java / Projects / JVM and JDK | |||
Adopt Open JDK | Community-driven OpenJDK builds, including both HotSpot and OpenJ9 | ||
Avian | 1,218 | over 3 years ago | JVM with JIT, AOT modes and iOS port |
Corretto | No-cost, multiplatform, production-ready distribution of OpenJDK by Amazon. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
Dragonwell8 | 4,195 | about 1 month ago | Downstream version of OpenJDK optimized for online e-commerce, financial, logistics applications |
Graal | 20,277 | 10 days ago | Polyglot embeddable JVM. (GPL-2.0-only WITH Classpath-exception-2.0) |
Liberica JDK | Built from OpenJDK, thoroughly tested and passed the JCK. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
OpenJ9 | 3,273 | 11 days ago | 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 |
Open JDK | Open JDK community home. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
ParparVM | 1,705 | 12 days ago | VM with non-blocking, concurrent GC for iOS. (GPL-2.0-only WITH Classpath-exception-2.0) |
RedHat Open JDK | RedHat's OpenJDK distribution. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
SAP Machine | SAP's no-cost, rigorously tested and JCK-verified OpenJDK friendly fork. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
Zulu | OpenJDK builds for Windows, Linux, and macOS. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
Microsoft JDK | 321 | 7 months ago | Microsoft Build of OpenJDK, Free, Open Source, Freshly Brewed! |
Awesome Java / Projects / Logging | |||
Apache Log4j 2 | Complete rewrite with a powerful plugin and configuration architecture | ||
Echopraxia | 53 | 3 months ago | 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 |
Graylog | Open-source aggregator suited for extended role and permission management. (GPL-3.0-only) | ||
Kibana | Analyzes and visualizes log files. Some features require payment | ||
Logback | Robust logging library with interesting configuration options via Groovy | ||
Logbook | 1,827 | 12 days ago | Extensible, open-source library for HTTP request and response logging |
Logstash | Tool for managing log files | ||
p6spy | 2,065 | over 2 years ago | Enables logging for all JDBC transactions without changes to the code |
SLF4J | Abstraction layer/simple logging facade | ||
tinylog | Lightweight logging framework with static logger class | ||
OpenTracing Toolbox | 180 | about 1 year ago | Collection of libraries that build on top of OpenTracing and provide extensions and plugins to existing instrumentations |
Awesome Java / Projects / Machine Learning | |||
Apache Flink | Fast, reliable, large-scale data processing engine | ||
Apache Mahout | Scalable algorithms focused on collaborative filtering, clustering and classification | ||
DatumBox | Provides several algorithms and pre-trained models for natural language processing | ||
Deeplearning4j | Distributed and multi-threaded deep learning library | ||
DJL | High-level and engine-agnostic framework for deep learning | ||
H2O | Analytics engine for statistics over big data | ||
Intelligent java | 65 | 8 months ago | Seamlessly integrate with remote deep learning and language models programmatically |
JSAT | 788 | almost 2 years ago | Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. (GPL-3.0-only) |
m2cgen | 2,800 | 2 months ago | CLI tool to transpile models into native code |
Neureka | 69 | 5 months ago | A lightweight, platform independent, OpenCL accelerated nd-array/tensor library |
oj! Algorithms | High-performance mathematics, linear algebra and optimisation needed for data science, machine learning and scientific computing | ||
Oryx 2 | 1,786 | about 3 years ago | Framework for building real-time, large-scale machine learning applications. Includes end-to-end applications for collaborative filtering, classification, regression, and clustering |
Siddhi | 1,514 | about 2 months ago | Cloud native streaming and complex event processing engine |
Smile | 6,017 | 19 days ago | Statistical Machine Intelligence and Learning Engine provides a set of machine learning algorithms and a visualization library |
Tribuo | Provides tools for classification, regression, clustering, model development and interfaces with other libraries such as scikit-learn, pytorch and TensorFlow | ||
Weka | Collection of algorithms for data mining tasks ranging from pre-processing to visualization. (GPL-3.0-only) | ||
Awesome Java / Projects / Messaging | |||
Aeron | 7,338 | 11 days ago | Efficient, reliable, unicast and multicast message transport |
Apache ActiveMQ | Message broker that implements JMS and converts synchronous to asynchronous communication | ||
Apache Camel | Glues together different transport APIs via Enterprise Integration Patterns | ||
Apache Kafka | High-throughput distributed messaging system | ||
Apache Pulsar | Distributed pub/sub-messaging system | ||
Apache RocketMQ | Fast, reliable, and scalable distributed messaging platform | ||
Apache Qpid | Apache Qpid makes messaging tools that speak AMQP and support many languages and platforms | ||
AutoMQ | 3,731 | 12 days ago | AutoMQ is a cloud-native, serverless reinvented Kafka that is easily scalable, manage-less and cost-effective |
Deezpatch | 42 | about 1 month ago | Simple, lightweight, and performant dispatch library for decoupling messages (requests and events) and message handlers |
EventBus | 24,666 | 8 months ago | Simple publish/subscribe event bus |
Hermes | Fast and reliable message broker built on top of Kafka | ||
JeroMQ | 2,362 | 24 days ago | Implementation of ZeroMQ |
Nakadi | 956 | 6 months ago | Provides a RESTful API on top of Kafka |
RabbitMQ Java client | 1,242 | 12 days ago | RabbitMQ client |
Smack | 2,375 | 16 days ago | Cross-platform XMPP client library |
NATS client | 567 | 12 days ago | NATS client |
Awesome Java / Projects / Microservice | |||
ActiveRPC | Lightweight and fast library for complex high-load distributed applications and Memcached-like solutions | ||
Apollo | Libraries for writing composable microservices | ||
Armeria | 4,800 | 11 days ago | Asynchronous RPC/REST client/server library built on top of Java 8, Netty, HTTP/2, Thrift and gRPC |
consul-api | 416 | over 1 year ago | Client for the Consul API: a distributed, highly available and datacenter-aware registry/discovery service |
Eureka | 12,385 | about 2 months ago | REST-based service registry for resilient load balancing and failover |
Helidon | Two-style approach for writing microservices: Functional-reactive and as an implementation of MicroProfile | ||
JDA | 4,305 | 19 days ago | Wrapping of the Discord REST API and its WebSocket events |
KeenType | Modernized version of a Java-based implementation of the New Typesetting System, which was heavily based on Donald E. Knuth's original TeX | ||
kubernetes-client | 3,396 | 11 days ago | Client provides access to the full Kubernetes & OpenShift REST APIs via a fluent DSL |
Micronaut | Modern full-stack framework with focus on modularity, minimal memory footprint and startup time | ||
Nacos | Dynamic service discovery, configuration and service management platform for building cloud native applications | ||
OpenAI-Java | 4,751 | 4 months ago | Java libraries for using OpenAI's GPT-3 API |
Quarkus | Kubernetes stack tailored for the HotSpot and Graal VM | ||
Sentinel | 22,336 | 20 days ago | Flow control component enabling reliability, resilience and monitoring for microservices |
Awesome Java / Projects / Miscellaneous | |||
AWS SDK for Java 2.0 | 2,167 | 11 days ago | Wrapper around AWS' API |
CQEngine | 1,715 | 10 months ago | Ultra-fast, SQL-like queries on Java collections |
Design Patterns | 89,634 | 5 days ago | Implementation and explanation of the most common design patterns |
FF4J | 1,380 | 12 days ago | Feature Flags for Java |
FizzBuzz Enterprise Edition | 21,276 | 3 months ago | No-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes. (No explicit license) |
IP2Location.io Java SDK | 4 | 8 months ago | Wrapper for the IP2Location.io Geolocation API and the IP2WHOIS domain WHOIS API |
ISBN core | 3 | 3 months ago | A small library that contains a representation object of ISBN-10 and ISBN-13 and tools to parse, validate and format one |
J2ObjC | 5,990 | 17 days ago | Java-to-Objective-C translator for porting Android libraries to iOS |
JBake | Static website generator | ||
JBot | 1,202 | 3 months ago | Framework for building chatbots. (GPL-3.0-only) |
JCuda | JCuda offers Java bindings for CUDA and CUDA-related libraries | ||
Jimfs | 2,428 | 12 days ago | In-memory file system |
JObfuscator | Source code obfuscator | ||
Joda-Money | Basic currency and money classes and algorithms not provided by the JDK | ||
jOOX | 494 | 2 months ago | Simple wrapper for the org.w3c.dom package, to allow for fluent XML document creation and manipulation with an API inspired by jQuery |
JPad | Snippet runner | ||
jsweet | 1,460 | 10 months ago | Source transpiler to TypeScript/JavaScript |
Maven Wrapper | 1,588 | almost 3 years ago | Analogue of Gradle Wrapper for Maven, allows building projects without installing maven |
Membrane Service Proxy | 457 | 12 days ago | Open-source, reverse-proxy framework |
MinimalFTP | 160 | 8 months ago | Lightweight, small and customizable FTP server |
LittleProxy | 2,062 | 3 months ago | High performance HTTP proxy atop Netty's event-based networking library |
Modern Java - A Guide to Java 8 | 16,721 | about 1 year ago | Popular Java 8 guide |
Modernizer | 368 | 11 days ago | Detect uses of legacy Java APIs |
OctoLinker | 5,271 | about 1 year ago | Browser extension which allows to navigate through code on GitHub more efficiently |
OpenRefine | Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases | ||
PipelinR | 414 | over 1 year ago | Small utility library for using handlers and commands with pipelines |
Polyglot for Maven | 890 | 12 days ago | Extensions for Maven 3.3.1+ that allows writing the POM model in dialects other than XML |
RR4J | 22 | over 2 years ago | RR4J is a tool that records java bytecode execution and later allows developers to replay locally |
Simple Java Mail | 1,221 | 11 days ago | Mailing with a clean and fluent API |
Smooks | 395 | 13 days ago | Framework for fragment-based message processing. (Apache-2.0 OR LGPL-3.0-or-later) |
Svix | 2,324 | 11 days ago | Library for the Svix API to send webhooks and verify signatures |
Togglz | Implementation of the Feature Toggles pattern | ||
TypeTools | 615 | over 1 year ago | Tools for resolving generic types |
XMLBeam | 73 | about 1 year ago | Processes XML by using annotations or XPath within code |
yGuard | 369 | 2 months ago | Obfuscation via renaming and shrinking |
Awesome Java / Projects / Mobile Development | |||
Codename One | Cross-platform solution for writing native mobile apps. (GPL-2.0-only WITH Classpath-exception-2.0) | ||
MobileUI | Cross-platform framework for developing mobile apps with native UI in Java and Kotlin | ||
Multi-OS Engine | Open-source, cross-platform engine to develop native mobile (iOS, Android, etc.) apps | ||
Awesome Java / Projects / Monitoring | |||
Automon | 575 | 11 days ago | Combines the power of AOP with monitoring and/or logging tools |
Datadog | 573 | 11 days ago | Modern monitoring & analytics |
Dropwizard Metrics | 7,835 | 11 days ago | Expose metrics via JMX or HTTP and send them to a database |
Failsafe Actuator | 53 | over 2 years ago | Out of the box monitoring of Failsafe Circuit Breaker in Spring-Boot environment |
Glowroot | Open-source Java APM | ||
HertzBeat | 5,529 | 13 days ago | Real-time monitoring system with custom-monitor and agentless |
hippo4j | 5,512 | 12 days ago | Dynamic and observable thread pool framework |
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 | ||
Instrumental | Real-time Java application performance monitoring. A commercial service with free development accounts | ||
Jaeger client | 491 | over 2 years ago | Jaeger client |
JavaMelody | 2,937 | 18 days ago | Performance monitoring and profiling |
jmxtrans | 1,705 | about 2 years ago | 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 |
Jolokia | JMX over REST | ||
Micrometer | 4,450 | 11 days ago | Vendor-neutral metrics/observability facade for the most popular metrics/observability libraries |
Micrometer Tracing | 244 | 11 days ago | Vendor-neutral distributed tracing facade for the most popular tracer libraries |
nudge4j | 159 | over 4 years ago | Remote developer console from the browser for Java 8 via bytecode injection |
OpenTelemetry | 1,973 | 11 days ago | Instrument, generate, collect, and export telemetry data to help you analyze your software’s performance and behavior |
Pinpoint | 13,393 | 12 days ago | Open-source APM tool |
Prometheus | 2,172 | 11 days ago | Provides a multi-dimensional data model, DSL, autonomous server nodes and much more |
Sentry | 1,149 | 11 days ago | Integration with , an application error tracking and performance analysis platform |
SPM | 23 | 19 days ago | Performance monitor with distributing transaction tracing for JVM apps |
Stagemonitor | 1,706 | over 1 year ago | Open-source performance monitoring and transaction tracing for JVM apps |
Sysmon | 155 | almost 8 years ago | Lightweight platform monitoring tool for Java VMs |
zipkin | Distributed tracing system which gathers timing data needed to troubleshoot latency problems in microservice architectures | ||
Awesome Java / Projects / Native | |||
Aparapi | 466 | about 2 years ago | Converts bytecode to OpenCL which allows execution on GPUs |
JavaCPP | 4,479 | 2 months ago | Provides efficient and easy access to native C++ |
JNA | 8,489 | 11 days ago | Work with native libraries without writing JNI. Also provides interfaces to common system libraries |
JNR | 1,250 | 8 months ago | 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 |
Awesome Java / Projects / Natural Language Processing | |||
CogCompNLP | 470 | over 1 year ago | Provides common annotators for plain text input. (Research and Academic Use License) |
CoreNLP | Provides a set of fundamental tools for tasks like tagging, named entity recognition, and sentiment analysis. (GPL-3.0-or-later) | ||
DKPro | Collection of reusable NLP tools for linguistic pre-processing, machine learning, lexical resources, etc | ||
LingPipe | Toolkit for tasks ranging from POS tagging to sentiment analysis | ||
Awesome Java / Projects / Networking | |||
Commons-networking | 16 | over 2 years ago | Client for server-sent events (SSE) |
Comsat | 598 | almost 7 years ago | Integrates standard Java web-related APIs with Quasar fibers and actors |
Dubbo | 40,411 | 10 days ago | High-performance RPC framework |
Grizzly | NIO framework. Used as a network layer in Glassfish | ||
gRPC | 11,387 | 11 days ago | RPC framework based on protobuf and HTTP/2 |
KryoNet | 1,819 | over 3 years ago | Provides a clean and simple API for efficient TCP and UDP client/server network communication using NIO and Kryo |
MINA | Abstract, event-driven async I/O API for network operations over TCP/IP and UDP/IP via Java NIO | ||
Netty | Framework for building high-performance network applications | ||
Drift | 243 | 5 months ago | Easy-to-use, annotation-based library for creating Thrift clients and serializable types |
ServiceTalk | 914 | 12 days ago | Framework built on Netty with APIs tailored to specific protocols and support for multiple programming paradigms |
sshj | 2,488 | 29 days ago | Programmatically use SSH, SCP or SFTP |
TLS Channel | 191 | 17 days ago | Implements a ByteChannel interface over SSLEngine, enabling easy-to-use (socket-like) TLS |
Undertow | Web server providing both blocking and non-blocking APIs based on NIO. Used as a network layer in WildFly. (LGPL-2.1-only) | ||
urnlib | 30 | over 1 year ago | Represent, parse and encode URNs, as in RFC 2141. (GPL-3.0-only) |
Fluency | 154 | 15 days ago | High throughput data ingestion logger to Fluentd and Fluent Bit |
Awesome Java / Projects / ORM | |||
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 | ||
Doma | 439 | 11 days ago | 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 |
Ebean | Provides simple and fast data access | ||
EclipseLink | Supports a number of persistence standards: JPA, JAXB, JCA and SDO | ||
Hibernate | Robust and widely used, with an active community. (LGPL-2.1-only) | ||
MyBatis | 19,719 | 11 days ago | Couples objects with stored procedures or SQL statements |
ObjectiveSql | 1,270 | 5 months ago | ActiveRecord ORM for rapid development and convention over configuration |
Permazen | 403 | about 1 month ago | Language-natural persistence layer |
SimpleFlatMapper | 438 | 23 days ago | Simple database and CSV mapper |
Awesome Java / Projects / PaaS | |||
AWS Elastic Beanstalk | AWS-based, with support for Tomcat and Jetty | ||
AWS Lambda | Serverless computation | ||
Google Cloud | Google's cloud infrastructure | ||
Heroku | Abstract computing environments | ||
Microsoft Azure | Microsoft's cloud infrastructure | ||
OpenShift | Provides additionally an on-premise solution | ||
Awesome Java / Projects / PDF | |||
Apache FOP | Creates PDFs from XSL-FO | ||
Apache PDFBox | Toolbox for creating and manipulating PDFs | ||
Dynamic Jasper | Abstraction layer to JasperReports. (LGPL-3.0-only) | ||
DynamicReports | 210 | 15 days ago | Simplifies JasperReports. (LGPL-3.0-only) |
Eclipse BIRT | Report engine for creating PDF and other formats (DOCX, XLSX, HTML, etc) using Eclipse-based visual editor | ||
flyingsaucer | 1,986 | 12 days ago | XML/XHTML and CSS 2.1 renderer. (LGPL-2.1-or-later) |
iText | Creates PDF files programmatically | ||
JasperReports | Complex reporting engine. (LGPL-3.0-only) | ||
Open HTML to PDF | 1,913 | 4 months ago | Properly supports modern PDF standards based on flyingsaucer and Apache PDFBox |
OpenPDF | 3,526 | about 2 months ago | Open-source iText fork. (LGPL-3.0-only & MPL-2.0) |
Tabula | 1,817 | 15 days ago | Extracts tables from PDF files |
Awesome Java / Projects / Performance analysis | |||
fastThread | Analyze and visualize thread dumps with a free cloud-based upload interface | ||
GCeasy | Tool to analyze and visualize GC logs. It provides a free cloud-based upload interface | ||
honest-profiler | 1,249 | 10 months ago | Low-overhead, bias-free sampling profiler |
jHiccup | 684 | 5 months ago | Logs and records platform JVM stalls |
JITWatch | 3,079 | about 2 months ago | Analyze the JIT compiler optimisations made by the HotSpot JVM |
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) | ||
LatencyUtils | 453 | 5 months ago | Utilities for latency measurement and reporting |
Awesome Java / Projects / Platform | |||
BCEL | Byte Code Engineering Library - analyze, create, and manipulate Java class files | ||
BeanUtils | Easy-to-use wrappers around the Java reflection and introspection APIs | ||
BeanUtils2 | Redesign of Commons BeanUtils | ||
BSF | Bean Scripting Framework - interface to scripting languages, including JSR-223 | ||
Chain | Chain of Responsibility pattern implementation | ||
ClassScan | Find Class interfaces, methods, fields, and annotations without loading | ||
CLI | Command-line arguments parser | ||
CLI2 | Redesign of Commons CLI | ||
Codec | General encoding/decoding algorithms, e.g. phonetic, base64 or URL | ||
Collections | Extends or augments the Java Collections Framework | ||
Compress | Defines an API for working with tar, zip and bzip2 files | ||
Configuration | Reading of configuration/preferences files in various formats | ||
Convert | Commons-Convert aims to provide a single library dedicated to the task of converting an object of one type to another | ||
CSV | Component for reading and writing comma separated value files | ||
Daemon | Alternative invocation mechanism for unix-daemon-like java code | ||
DBCP | Database connection pooling services | ||
DbUtils | JDBC helper library | ||
Digester | XML-to-Java-object mapping utility | ||
Library for sending e-mail from Java | |||
Exec | API for dealing with external process execution and environment management in Java | ||
FileUpload | File upload capability for your servlets and web applications | ||
Finder | Java library inspired by the UNIX find command | ||
Flatfile | Java library for working with flat data structures | ||
Functor | Function that can be manipulated as an object, or an object representing a single, generic function | ||
Graph | General purpose graph APIs and algorithms | ||
I18n | Adds the feature of localized message bundles that consist of one or many localized texts that belong together | ||
Id | Id is a component used to generate identifiers | ||
Imaging | Image library | ||
IO | Collection of I/O utilities | ||
Javaflow | Continuation implementation to capture the state of the application | ||
JCI | Java Compiler Interface | ||
JCS | Java Caching System | ||
Jelly | XML based scripting and processing engine | ||
Jexl | Expression language which extends the Expression Language of the JSTL | ||
JNet | JNet allows to use dynamically register url stream handlers through the java.net API | ||
JXPath | Utilities for manipulating Java Beans using the XPath syntax | ||
Lang | Provides extra functionality for classes in java.lang | ||
Logging | Wrapper around a variety of logging API implementations | ||
Math | Lightweight, self-contained mathematics and statistics components | ||
Monitoring | Monitoring aims to provide a simple but extensible monitoring solution for Java applications | ||
Nabla | Nabla provides automatic differentiation classes that can generate derivative of any function implemented in the Java language | ||
Net | Collection of network utilities and protocol implementations | ||
OGNL | Object-graph navigation language | ||
OpenPGP | Interface to signing and verifying data using OpenPGP | ||
Performance | Small framework for microbenchmark clients, with implementations for Commons DBCP and Pool | ||
Pipeline | Provides a set of pipeline utilities designed around work queues that run in parallel to sequentially process data objects | ||
Pool | Generic object pooling component | ||
Proxy | Library for creating dynamic proxies | ||
RDF | Common implementation of RDF 1.1 that could be implemented by systems on the JVM | ||
RNG | Commons Rng provides implementations of pseudo-random numbers generators | ||
SCXML | Implementation of the State Chart XML specification aimed at creating and maintaining a Java SCXML engine | ||
Validator | Framework to define validators and validation rules in an xml file | ||
VFS | Virtual File System component for treating files, FTP, SMB, ZIP and such like as a single logical file system | ||
Weaver | Provides an easy way to enhance (weave) compiled bytecode | ||
CUBA Platform | High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin | ||
Light-4J | 3,608 | 16 days ago | Fast, lightweight and productive microservices framework with built-in |
Orienteer | 241 | 8 months ago | Open-source business application platform for rapid configuration/development of CRM, ERP, LMS and other applications |
Spring | Provides many packages for dependency injection, aspect-oriented programming, security, etc | ||
Awesome Java / Projects / Processes | |||
ch.vorburger.exec | 30 | 11 days ago | Convenient API around Apache Commons Exec |
zt-exec | 878 | 7 months ago | Provides a unified API to Apache Commons Exec and ProcessBuilder |
zt-process-killer | 127 | 10 months ago | Stops processes started from Java or the system processes via PID |
Awesome Java / Projects / Reactive libraries | |||
Akka | Toolkit and runtime for building concurrent, distributed, fault-tolerant and event-driven applications | ||
Reactive Streams | 4,797 | 7 months ago | Provides a standard for asynchronous stream processing with non-blocking backpressure |
Reactor | 4,934 | 12 days ago | Library for building reactive fast-data applications |
RxJava | 47,861 | 2 days ago | Allows for composing asynchronous and event-based programs using observable sequences |
vert.x | Polyglot event-driven application framework | ||
Awesome Java / Projects / REST Frameworks | |||
Dropwizard | 8,507 | 11 days ago | Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics |
Elide | Opinionated framework for JSON- or GraphQL-APIs based on a JPA data model | ||
Jersey | JAX-RS reference implementation | ||
Microserver | 940 | over 1 year ago | 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 |
Rapidoid | Simple, secure and extremely fast framework consisting of an embedded HTTP server, GUI components and dependency injection | ||
rest.li | 2,505 | 16 days ago | 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 |
RESTEasy | Fully certified and portable implementation of the JAX-RS specification | ||
RestExpress | 938 | 2 months ago | Thin wrapper on the JBoss Netty HTTP stack that provides scaling and performance |
Restlet Framework | 648 | 13 days ago | Pioneering framework with powerful routing and filtering capabilities, and a unified client and server API |
Spark | Sinatra inspired framework | ||
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 | ||
springdoc-openapi | 3,256 | 13 days ago | Automates the generation of API documentation using Spring Boot projects |
Swagger | Standard, language-agnostic interface to REST APIs | ||
Awesome Java / Projects / Science | |||
BioJava | Facilitates processing biological data by providing algorithms, file format parsers, sequencing and 3D visualization commonly used in bioinformatics | ||
Chart-FX | 504 | 12 days ago | Scientific charting library with focus on performance optimised real-time data visualisation at 25 Hz update rates for large data sets |
DataMelt | Environment for scientific computation, data analysis and data visualization. (GPL-3.0-or-later) | ||
Erdos | 126 | about 1 year ago | Modular, light and easy graph framework for theoretic algorithms |
GraphStream | Library for modeling and analyzing dynamic graphs | ||
JFreeChart | 2D chart library for Swing, JavaFX and server-side applications. (LGPL-2.1-only) | ||
JGraphT | 2,589 | 25 days ago | Graph library that provides mathematical graph-theory objects and algorithms |
JGraphX | 668 | almost 4 years ago | Library for visualizing (mainly Swing) and interacting with node-edge graphs |
LogicNG | 132 | about 1 month ago | Library for creating, manipulating and solving Boolean and Pseudo-Boolean formulas |
Mines Java Toolkit | 77 | over 3 years ago | Library for geophysical scientific computation, visualization and digital signal analysis |
Morpheus | 238 | 10 months ago | 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 |
Orekit | A low level space flight dynamics library providing basic elements (orbits, dates, attitude, frames...) and various algorithms (conversions, propagations, pointing...) to handle them | ||
Orson-Charts | 107 | over 2 years ago | 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) |
Tablesaw | 3,527 | 2 months ago | Includes a data-frame, an embedded column store, and hundreds of methods to transform, summarize, or filter data |
XChart | 1,501 | about 2 months ago | Light-weight library for plotting data. Many customizable chart types are available |
Awesome Java / Projects / Search | |||
Apache Lucene | High-performance, full-featured, cross-platform, text search engine library | ||
Apache Solr | Enterprise search engine optimized for high-volume traffic | ||
Elasticsearch | Distributed, multitenant-capable, full-text search engine with a RESTful web interface and schema-free JSON documents | ||
Indexer4j | 51 | over 5 years ago | Simple and light full text indexing and searching library |
Awesome Java / Projects / Security | |||
Apache Shiro | Performs authentication, authorization, cryptography and session management | ||
Bouncy Castle | All-purpose cryptographic library and JCA provider offering a wide range of functions, from basic helpers to PGP/SMIME operations | ||
DependencyCheck | 6,336 | 11 days ago | Detects publicly disclosed vulnerabilities contained within a project's dependencies |
Cryptomator | Multiplatform, transparent, client-side encryption of files in the cloud. (GPL-3.0-only) | ||
Hdiv | 214 | 29 days ago | 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 |
jjwt | 10,229 | 18 days ago | JSON web token for Java and Android |
jwt-java | 11 | over 1 year ago | Easily create and parse JSON Web Tokens and create customized JWT validators using a fluent API |
Jwks RSA | 194 | 2 months ago | JSON Web Key Set parser |
Kalium | 207 | about 1 year ago | Binding for the Networking and Cryptography (NaCl) library |
Keycloak | Integrated SSO and IDM for browser apps and RESTful web services | ||
Keywhiz | 2,619 | about 1 year ago | System for distributing and managing secrets |
Nbvcxz | 292 | about 1 month ago | Advanced password strength estimation |
OACC | Provides permission-based authorization services | ||
OpenAM | 768 | 12 days ago | Access management solution that includes authentication, SSO, authorization, federation, entitlements and web services security |
OTP-Java | 186 | 12 months ago | One-time password generator library according to RFC 4226 (HOTP) and RFC 6238 (TOTP) |
pac4j | 2,419 | 11 days ago | Security engine |
Passay | Enforce password policy by validating candidate passwords against a configurable rule set | ||
Password4j | 351 | 2 months ago | User-friendly cryptographic library that supports Argon2, Bcrypt, Scrypt, PBKDF2 and various other cryptographic hash functions |
SecurityBuilder | 45 | over 3 years ago | Fluent Builder API for JCA and JSSE classes and especially X.509 certificates |
SSLContext-Kickstart | 493 | 12 days ago | High-level SSL context builder for configuring HTTP clients with SSL/TLS |
Themis | 1,859 | about 1 month ago | 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 |
Tink | 13,481 | 6 months ago | Provides a simple and misuse-proof API for common cryptographic tasks |
Topaz | Fine-grained authorization for applications with support for RBAC, ABAC, and ReBAC | ||
Awesome Java / Projects / Serialization | |||
FlatBuffers | 23,153 | 12 days ago | Memory-efficient serialization library that can access serialized data without unpacking and parsing it |
FST | 1,583 | over 1 year ago | JDK-compatible, high-performance object graph serialization |
Fury | 3,023 | 14 days ago | Blazing fast object graph serialization framework powered by JIT and zero-copy |
Kryo | 6,181 | 12 days ago | Fast and efficient object graph serialization framework |
MessagePack | 1,409 | 17 days ago | Efficient binary serialization format |
PHP Serializer | 15 | over 6 years ago | Serializing objects in the PHP serialization format |
Awesome Java / Projects / Server | |||
Apache Tomcat | Robust, all-round server for Servlet and JSP | ||
Apache TomEE | Tomcat plus Java EE | ||
Jetty | Provides a Web server and javax.servlet container, plus support for HTTP/2, WebSocket, OSGi, JMX, JNDI, JAAS and many other integrations | ||
nanohttpd | 6,937 | about 1 year ago | Tiny, easily embeddable HTTP server |
WildFly | Formerly known as JBoss and developed by Red Hat with extensive Java EE support. (LGPL-2.1-only) | ||
Awesome Java / Projects / Template Engine | |||
Freemarker | Library to generate text output (HTML web pages, e-mails, configuration files, source code, etc.) based on templates and changing data | ||
Handlebars.java | Logicless and semantic Mustache templates | ||
Jade4J | 706 | over 2 years ago | Implementation of Pug (formerly known as Jade) |
Jamal | 58 | 12 days ago | Extendable template engine embedded into Maven/JavaDoc, supporting multiple extensions (Groovy, Ruby, JavaScript, JShell, PlantUml) with support for snippet handling |
jstachio | 257 | 29 days ago | Typesafe Mustache templating engine |
jte | 764 | 11 days ago | Compiles to classes, and uses an easy syntax, several features to make development easier and provides fast execution and a small footprint |
Jtwig | 301 | over 6 years ago | Modular, configurable and fully tested template engine |
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 | ||
Rocker | 741 | 4 months ago | Optimized, memory efficient and speedy template engine producing statically typed, plain objects |
StringTemplate | 944 | 3 months ago | Template engine for generating source code, web pages, emails, or any other formatted text output |
Thymeleaf | Aims to be a substitute for JSP and works for XML files | ||
Awesome Java / Projects / Testing | |||
Awaitility | 3,813 | 2 months ago | DSL for synchronizing asynchronous operations |
ConcurrentUnit | 420 | 6 months ago | Toolkit for testing multi-threaded and asynchronous applications |
GreenMail | In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. (GPL-2.0-only) | ||
Hoverfly Java | 168 | about 1 month ago | Native bindings for Hoverfly, a proxy which allows you to simulate HTTP services |
Karate | 8,105 | 18 days ago | DSL that combines API test-automation, mocks and performance-testing making testing REST/HTTP services easy |
REST Assured | 6,833 | about 2 months ago | DSL for easy testing of REST/HTTP services |
WebTau | 366 | 16 days ago | Test across REST-API, Graph QL, Browser, Database, CLI and Business Logic with consistent set of matchers and concepts |
Cucumber | 2,699 | 12 days ago | Provides a way to describe features in a plain language which customers can understand |
Cukes-REST | 112 | over 1 year ago | Collection of Gherkin steps for REST-service testing using Cucumber |
J8Spec | 47 | over 2 years ago | Follows a Jasmine-like syntax |
JBehave | Extensively configurable framework that describes stories | ||
JGiven | Provides a fluent API which allows for simpler composition | ||
Lamdba Behave | 254 | over 2 years ago | Aims to provide a fluent API to write tests in long and descriptive sentences that read like plain English |
Serenity BDD | 719 | 17 days ago | Automated Acceptance testing and reporting library that works with Cucumber, JBehave and JUnit to make it easier to write high quality executable specifications |
Beanmother | 115 | almost 2 years ago | Sets up beans from YAML fixtures |
Datafaker | 1,155 | 11 days ago | Modern fake data generator forked from Java Faker |
Fixture Factory | 445 | over 1 year ago | Generates fake objects from a template |
jFairy | 741 | 7 months ago | Fake data generator |
Instancio | 894 | 12 days ago | Automates data setup in unit tests by generating fully-populated, reproducible objects. Includes JUnit 5 extension |
Randomized Testing | 173 | 7 months ago | JUnit test runner and plugins for running JUnit tests with pseudo-randomness |
Java Faker | 4,714 | 4 months ago | Port of Ruby's fake data generator |
Mockneat | 527 | over 1 year ago | Another fake data generator |
ArchUnit | 3,188 | 13 days ago | Test library for specifying and asserting architecture rules |
Apache JMeter | Functional testing and performance measurements | ||
Arquillian | Integration and functional testing platform for Java EE containers | ||
Citrus | Integration testing framework that focuses on both client- and server-side messaging | ||
Gatling | Load testing tool designed for ease of use, maintainability and high performance | ||
JUnit | Common testing framework | ||
jqwik | Engine for property-based testing built on JUnit 5 | ||
Pact JVM | 1,078 | 17 days ago | Consumer-driven contract testing |
PIT | Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test suites | ||
AssertJ | Fluent assertions that improve readability | ||
Hamcrest | Matchers that can be combined to create flexible expressions of intent | ||
JSONAssert | Simplifies testing JSON strings | ||
JsonUnit | 884 | 11 days ago | Library that simplifies JSON comparison in tests |
Truth | Google's fluent assertion and proposition framework | ||
XMLUnit | 297 | about 1 month ago | Simplifies testing for XML output |
ConsoleCaptor | 30 | 4 months ago | Captures console output for unit testing purposes |
junit-dataprovider | 245 | almost 2 years ago | TestNG-like data provider/runner for JUnit |
LogCaptor | 364 | 12 days ago | Captures log entries for unit testing purposes |
log-capture | 12 | 5 months ago | Captures log entries and provides assertions for unit and integration testing |
Mutability Detector | 240 | about 1 year ago | Reports whether instances of a given class are immutable |
pojo-tester | Automatically performs tests on basic POJO methods. (LGPL-3.0-only) | ||
raml-tester | 71 | over 5 years ago | Tests if a request/response matches a given RAML definition |
Selfie | 50 | 11 days ago | Snapshot testing (inline and on disk) |
TestContainers | 7,986 | 12 days ago | Provides throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container |
JMockit | Integration testing, API mocking and faking, and code coverage | ||
Mockito | 14,824 | 11 days ago | Mocking framework that lets you write tests with a clean and simple API |
MockServer | Allows mocking of systems integrated with HTTPS | ||
Moco | 4,363 | 3 months ago | Concise web services for stubs and mocks |
PowerMock | 4,154 | 9 months ago | Mocks static methods, constructors, final classes and methods, private methods, and removal of static initializers |
WireMock | Stubs and mocks web services | ||
EasyMock | 820 | 12 days ago | EasyMock is a Java library that provides an easy way to use Mock Objects in unit testing |
Awesome Java / Projects / Utility | |||
Arthas | 35,464 | 17 days ago | Allows to troubleshoot production issues for applications without modifying code or restarting servers |
bucket4j | 2,286 | 26 days ago | Rate limiting library based on token-bucket algorithm |
cactoos | 736 | 17 days ago | Collection of object-oriented primitives |
Chocotea | 40 | over 1 year ago | Generates postman collection, environment and integration tests from java code |
CRaSH | Provides a shell into a JVM that's running CRaSH. Used by Spring Boot and others. (LGPL-2.1-or-later) | ||
Dex | 1,321 | over 5 years ago | Java/JavaFX tool capable of powerful ETL and data visualization |
dregex | 45 | 17 days ago | Regular expression engine that uses deterministic finite automata. It supports some Perl-style features and yet retains linear matching time, and also offers set operations |
Embulk | 1,748 | 19 days ago | Bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services |
fswatch | 29 | 11 days ago | Micro library to watch for directory file system changes, simplifying java.nio.file.WatchService |
Gephi | 5,880 | about 1 month ago | Cross-platform for visualizing and manipulating large graph networks. (GPL-3.0-only) |
Guava | 50,070 | 11 days ago | Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and more |
JADE | Framework and environment for building and debugging multi-agent systems. (LGPL-2.0-only) | ||
Java Diff Utils | Utilities for text or data comparison and patching | ||
JavaVerbalExpressions | 2,621 | 11 days ago | Library that helps with constructing difficult regular expressions |
JGit | Lightweight, pure Java library implementing the Git version control system | ||
JKScope | 13 | 7 months ago | Java scope functions inspired by Kotlin |
minio-java | 1,100 | about 2 months ago | Provides simple APIs to access any Amazon S3-compatible object storage server |
Protégé | Provides an ontology editor and a framework to build knowledge-based systems | ||
Semver4j | 72 | 11 days ago | Lightweight library that helps you handling semantic versioning with different modes |
Underscore-java | 530 | 12 days ago | Port of Underscore.js functions |
Awesome Java / Projects / Version Managers | |||
jabba | 2,987 | 7 months ago | Java Version Manager inspired by nvm. Supports macOS, Linux and Windows |
jenv | 5,789 | 4 months ago | Java Version Manager inspired by rbenv. Can configure globally or per project. Tested on Debian and macOS |
SDKMan | 6,078 | about 2 months ago | Java Version Manager inspired by RVM and rbenv. Supports UNIX-based platforms and Windows |
Awesome Java / Projects / Web Crawling | |||
Apache Nutch | Highly extensible, highly scalable web crawler for production environments | ||
Crawler4j | 4,538 | almost 3 years ago | Simple and lightweight web crawler |
jsoup | Scrapes, parses, manipulates and cleans HTML | ||
StormCrawler | SDK for building low-latency and scalable web crawlers | ||
webmagic | 11,387 | about 2 months ago | Scalable crawler with downloading, url management, content extraction and persistent |
Awesome Java / Projects / Web Frameworks | |||
ActiveJ | Lightweight asynchronous framework built from the ground up for developing high-performance web applications | ||
Apache Tapestry | Component-oriented framework for creating dynamic, robust, highly scalable web applications | ||
Apache Wicket | Component-based web application framework similar to Tapestry, with a stateful GUI | ||
Blade | 5,837 | 2 months ago | Lightweight, modular framework that aims to be elegant and simple |
Bootique | Minimally opinionated framework for runnable apps | ||
Firefly | Asynchronous framework for rapid development of high-performance web application | ||
Javalin | Microframework for web applications | ||
Jooby | Scalable, fast and modular micro-framework that offers multiple programming models | ||
Ninja | Full-stack web framework | ||
Pippo | Small, highly modularized, Sinatra-like framework | ||
Play | Built on Akka, it provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications in Java and Scala | ||
PrimeFaces | JSF framework with both free and commercial/support versions and frontend components | ||
Ratpack | Set of libraries that facilitate fast, efficient, evolvable and well-tested HTTP applications | ||
Takes | 807 | 12 days ago | Opinionated web framework which is built around the concepts of True Object-Oriented Programming and immutability |
Vaadin | Full-stack open-source Java framework that simplifies web app development. Build complex, interactive applications with Java alone, and enhance with TypeScript and React components, without needing deep JavaScript, CSS, or HTML expertise | ||
Awesome Java / Projects / Workflow Orchestration Engines | |||
Cadence | Stateful code platform from Uber | ||
flowable | 7,853 | 11 days ago | Compact and efficient workflow and business process management platform |
Temporal | Microservice orchestration platform, forked from Cadence but gRPC based | ||
Awesome Java / Resources / Related Awesome Lists | |||
Awesome Annotation Processing | 479 | 4 months ago | |
Awesome Graal | 355 | over 1 year ago | |
Awesome Gradle Plugins | 454 | about 1 year ago | |
AwesomeJavaFX | 3,125 | 2 months ago | |
Awesome JVM | 2,066 | about 2 years ago | |
Awesome Microservices | 13,260 | 2 months ago | |
Awesome REST | 3,629 | about 2 months ago | |
Awesome Selenium | 1,012 | about 1 year ago | |
Awesome Hybris | 33 | 4 months ago | |
ciandcd | 1,861 | 6 months ago | |
Useful Java Links | 5,833 | 12 months ago | |
Java Concurrency Checklist | 1,281 | almost 4 years ago | |
Java Developer Roadmap | 3,922 | 10 months ago | |
Awesome Java / Resources / Communities | |||
r/java | Subreddit for the Java community | ||
Stack Overflow | Question/answer platform | ||
Awesome Java / Resources / Frontends | |||
java.libhunt.com | |||
Awesome Java / Resources / Influential Books | |||
Core Java Volume I--Fundamentals | |||
Core Java, Volume II--Advanced Features | |||
Effective Java (3rd Edition) | |||
Head First Java (3rd Edition) | |||
Java Concurrency in Practice | |||
The Well-Grounded Java Developer (2nd Edition) | |||
Thinking in Java | |||
Awesome Java / Resources / Podcasts and Screencasts | |||
140 Second Ducklings | Short videos on Twitter explaining Java debugging in depth | ||
A Bootiful Podcast | |||
Foojay Podcast | |||
Inside Java | (Official) | ||
Java Off Heap | |||
The Java Posse | Discontinued as of 02/2015 | ||
Awesome Java / Resources / People | |||
Adam Bien | Freelance author, JavaOne Rockstar speaker, consultant, Java Champion | ||
Aleksey Shipilëv | Performance geek, benchmarking czar, concurrency bug hunter | ||
Antonio Goncalves | Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author | ||
Arun Gupta | Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase | ||
Brian Goetz | Java Language Architect at Oracle | ||
Bruno Borges | Product Manager/Java Jock at Oracle | ||
Chris Engelbert | Open Source Enthusiast, Speaker, Developer, Developer Advocacy at TimescaleDB | ||
Chris Richardson | Software architect, consultant, and serial entrepreneur, Java Champion, JavaOne Rock Star, *POJOs in Action- author | ||
Ed Burns | Consulting Member of the Technical Staff at Oracle | ||
Eugen Paraschiv | Author of the Spring Security Course | ||
Heinz Kabutz | Java Champion, speaker, author of The Java Specialists' Newsletter, concurrency performance expert | ||
Holly Cummins | Technical Lead of IBM London's Bluemix Garage, Java Champion, developer, author, JavaOne rockstar | ||
James Weaver | Java/JavaFX/IoT developer, author and speaker | ||
Java EE | Official Java EE Twitter account | ||
Java Magazine | Official Java Magazine account | ||
Java | Official Java Twitter account | ||
Javin Paul | Well-known Java blogger | ||
Josh Long | Spring Advocate at Pivotal, author of O'Reilly's Cloud Native Java- and Building Microservices with Spring Boot, JavaOne Rock Star | ||
Lukas Eder | Java Champion, speaker, Founder and CEO Data Geekery (jOOQ) | ||
Mani Sarkar | Java champion, Polyglot, Software Crafter involved with @graalvm, AI/ML/DL, Data Science, Developer communities, speaker & blogger. Creator of couple of awesome lists like this one | ||
Mario Fusco | RedHatter, JUG coordinator, frequent speaker and author | ||
Mark Heckler | Pivotal Principal Technologist and Developer Advocate, conference speaker, published author, and Java Champion, focusing on Internet of Things and the cloud | ||
Mark Reinhold | Chief Architect, Java Platform Group, Oracle | ||
Markus Eisele | Java EE evangelist, Red Hat | ||
Martijn Verburg | London JUG co-leader, speaker, author, Java Champion and much more | ||
Martin Thompson | Pasty faced performance gangster | ||
Monica Beckwith | Performance consultant, JavaOne Rock Star | ||
OpenJDK | Official OpenJDK account | ||
Peter Lawrey | Peter Lawrey, Java performance expert | ||
Randy Shoup | Stitch Fix VP Engineering, speaker, JavaOne Rock Star | ||
Reza Rahman | Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker | ||
Sander Mak | Java Champion, author | ||
Simon Maple | Java Champion, VirtualJUG founder, LJC leader, RebelLabs author | ||
Spencer Gibb | Software Engineer, Dad, Geek, Co-founder and Lead of Spring Cloud Core @pivotal | ||
Stephen Colebourne | Java Champion, speaker | ||
Trisha Gee | Java Champion and speaker | ||
Venkat Subramaniam | Author, University of Houston professor, MicroSoft MVP award recipient, JavaOne Rock Star, Java Champion | ||
Vlad Mihalcea | Java Champion working on Hypersistence Optimizer, database aficionado, author of High-Performance Java Persistence book | ||
Groundbreakers | Oracle ACEs, Groundbreaker Ambassadors and Java Champions | ||
Awesome Java / Resources / Websites | |||
Baeldung | |||
Dzone | |||
foojay.io | |||
Google Java Style | |||
InfoQ | |||
Java Algorithms and Clients | |||
Java, SQL, and jOOQ | |||
Java.net | |||
Javalobby | |||
JavaWorld | |||
JAXenter | |||
RebelLabs | |||
OverOps Blog | |||
TheServerSide.com | |||
Vanilla Java | |||
Voxxed | |||
Java Weekly |
Backlinks from these awesome lists:
- sindresorhus/awesome
- bayandin/awesome-awesomeness
- lnishan/awesome-competitive-programming
- jnv/lists
- lightsky/awesome-materialdesign
- emijrp/awesome-awesome
- rafaskb/awesome-libgdx
- stevinz/awesome-game-engine-dev
- fleveque/awesome-awesomes
- erichs/awesome-awesome
- bradoyler/awesome-all
- flyhigher139/awesome-collection
- yongjhih/awesome-android-awesomeness
- szabgab/awesome-lists
- coopermaa/awesome-awesome
- 0ex/more-awesome