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: 3 days ago
JSON representation

  • Projects

    • Testing

      • AssertJ - Fluent assertions that improve readability.
      • JsonUnit - Library that simplifies JSON comparison in tests.
      • XMLUnit - Simplifies testing for XML output.
      • ConsoleCaptor - Captures console output for unit testing purposes.
      • junit-dataprovider - TestNG-like data provider/runner for JUnit.
      • junit-pioneer - JUnit 5 extension pack, pushing the frontiers on Jupiter.
      • LogCaptor - Captures log entries for unit testing purposes.
      • log-capture - Captures log entries and provides assertions for unit and integration testing.
      • Mutability Detector - Reports whether instances of a given class are immutable.
      • raml-tester - Tests if a request/response matches a given RAML definition.
      • Selfie - Snapshot testing (inline and on disk).
      • Stebz - Multi-approach framework for test steps managing.
      • Testcontainers - 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 - Mocking framework that lets you write tests with a clean and simple API.
      • Moco - Concise web services for stubs and mocks.
      • PowerMock - Mocks static methods, constructors, final classes and methods, private methods, and removal of static initializers.
      • EasyMock - EasyMock is a Java library that provides an easy way to use Mock Objects in unit testing.
      • JUnit - Common testing framework.
      • Pact JVM - Consumer-driven contract testing.
      • Kensa - Code-first BDD framework for Java and Kotlin that generates interactive HTML reports and sequence diagrams from test code.
      • skipper-java - Real-time test execution control via Google Spreadsheet, enabling instant toggle without code changes.
      • Java Evolved - Side-by-side comparisons of legacy and modern Java patterns.
      • JBehave - Extensively configurable framework that describes stories.
      • BitDive ![c - Zero-code integration testing platform that generates tests from runtime application behavior.
      • jqwik - Engine for property-based testing built on JUnit 5.
      • Selenium Boot - Zero-boilerplate Selenium + TestNG framework with auto driver management, smart retry, self-healing locators, AI failure analysis, and a built-in HTML report.
      • Truth - Google's fluent assertion and proposition framework.
      • test-watch-maven-plugin - Maven plugin providing Vitest-inspired watch mode for tests with smart selection and parallel execution.
    • Utility

      • Guava - 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)
      • JGit - Lightweight, pure Java library implementing the Git version control system.
      • Protégé - Provides an ontology editor and a framework to build knowledge-based systems.
      • Arthas - Allows to troubleshoot production issues for applications without modifying code or restarting servers.
      • cactoos - Collection of object-oriented primitives.
      • Chocotea - 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 - Java/JavaFX tool capable of powerful ETL and data visualization.
      • dregex - 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 - Bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services.
      • fswatch - Micro library to watch for directory file system changes, simplifying java.nio.file.WatchService.
      • Gephi - Cross-platform for visualizing and manipulating large graph networks. (GPL-3.0-only)
      • Javadoc Publisher - Generate Javadoc from your maven/gradle project and deploy it automatically on GitHub Page.
      • Java Diff Utils - Utilities for text or data comparison and patching.
      • JavaVerbalExpressions - Library that helps with constructing difficult regular expressions.
      • JKScope - Java scope functions inspired by Kotlin.
      • minio-java - Provides simple APIs to access any Amazon S3-compatible object storage server.
      • Semver4j - Lightweight library that helps you handling semantic versioning with different modes.
      • Underscore-java - Port of Underscore.js functions.
      • bucket4j - Rate limiting library based on token-bucket algorithm.
      • Protégé - Provides an ontology editor and a framework to build knowledge-based systems.
      • java-util - Zero-dependency, high-performance utilities featuring Converter (universal type conversion), DeepEquals, CaseInsensitiveMap, TTLCache, CompactMap, MultiKeyMap, and object graph traversal.
      • Jctx - Reads a Java project and generates a structured context file so AI tools can understand and help plan the codebase.
      • java-refined - Zero-dependency refinement types for Java 8+ with type-safe wrappers covering numerics, strings, and collections.
      • Sift - Type-safe, AST-based Regex Builder focused on readability and ReDoS prevention.
    • Version Managers

      • jabba - Java Version Manager inspired by nvm. Supports macOS, Linux and Windows.
      • jenv - Java Version Manager inspired by rbenv. Can configure globally or per project. Tested on Debian and macOS.
      • SDKMan - Java Version Manager inspired by RVM and rbenv. Supports UNIX-based platforms and Windows.
    • Web Crawling

      • Apache Nutch - Highly extensible, highly scalable web crawler for production environments.
      • jsoup - Scrapes, parses, manipulates and cleans HTML.
      • Crawler4j - Simple and lightweight web crawler.
      • webmagic - Scalable crawler with downloading, url management, content extraction and persistent.
      • StormCrawler - SDK for building low-latency and scalable web crawlers.
    • 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.
      • 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.
      • Vaadin - Event-driven framework that uses standard web components. Server-side architecture with Ajax on the client side.
      • Blade - Lightweight, modular framework that aims to be elegant and simple.
      • Firefly - Asynchronous framework for rapid development of high-performance web application.
      • Pippo - Small, highly modularized, Sinatra-like framework.
      • Takes - Opinionated web framework which is built around the concepts of True Object-Oriented Programming and immutability.
      • WebForms Core - A technology for managing HTML tags from the server.
      • PrimeFaces - JSF framework with both free and commercial/support versions and frontend components.
      • Erupt - Annotation-Driven Low-Code & JPA Visualization
      • tinystruct - Lightweight, pluggable framework for building Java applications with CLI, HTTP, and modular extension support.
      • Bootique - Minimally opinionated framework for runnable apps.
      • Jooby - Scalable, fast and modular micro-framework that offers multiple programming models.
    • Workflow Orchestration Engines

      • Cadence - Stateful code platform from Uber.
      • Temporal - Microservice orchestration platform, forked from Cadence but gRPC based.
      • flowable - Compact and efficient workflow and business process management platform.
  • Resources