Awesome Java 
A curated list of awesome Java frameworks, libraries and software.
Contents
- Projects
- Architecture
- Artificial Intelligence
- Bean Mapping
- Build
- Bytecode Manipulation
- Caching
- CLI
- Cloud
- Code Analysis
- Code Coverage
- Code Generators
- Compiler-compiler
- Computer Vision
- Configuration
- Constraint Satisfaction Problem Solver
- CSV
- Data Structures
- Database
- Date and Time
- Decentralization
- Dependency Injection
- Development
- Distributed Applications
- Distributed Transactions
- Distribution
- Document Processing
- Financial
- Formal Verification
- Functional Programming
- Game Development
- Geospatial
- GUI
- High Performance
- HTTP Clients
- Hypermedia Types
- IDE
- Imagery
- Introspection
- Job Scheduling
- JSON
- JVM and JDK
- Logging
- Machine Learning
- Messaging
- Microservice
- Miscellaneous
- Mobile Development
- Monitoring
- Native
- Natural Language Processing
- Networking
- ORM
- PaaS
- Pathfinding
- Performance analysis
- Platform
- Processes
- Reactive libraries
- REST Frameworks
- Science
- Search
- Security
- Serialization
- Server
- Template Engine
- Testing
- Utility
- Version Managers
- Web Crawling
- Web Frameworks
- Workflow Orchestration Engines
- Resources
- Related Awesome Lists
- Communities
- Frontends
- Influential Books
- Podcasts and Screencasts
- People
- Websites
- Contributing
Projects
Architecture
Frameworks and libraries that help implementing and verifying design and architecture concepts.
- ArchUnit - Test library for specifying and asserting architecture rules.
- jMolecules - Annotations and interfaces to express design and architecture concepts in code.
Artificial Intelligence
Frameworks that help you to leverage LLMs and AI.
- LangChain4j - Simplifies integration of LLMs with unified APIs and a comprehensive toolbox.
- MCP Java SDK - Enables applications to interact with AI models and tools through a standardized interface (i.e. Model Context Protocol), supporting both synchronous and asynchronous communication patterns.
- simple-openai - Library to use the OpenAI API (and compatible ones) in the simplest possible way.
- Spring AI - Application framework for AI engineering for Spring.
Bean Mapping
Frameworks that ease bean mapping.
- dOOv - Provides fluent API for typesafe domain model validation and mapping. It uses annotations, code generation and a type safe DSL to make bean validation and mapping fast and easy.
- JMapper - Uses byte code manipulation for lightning-fast mapping. Supports annotations and API or XML configuration.
- MapStruct - Code generator that simplifies mappings between different bean types, based on a convention-over-configuration approach.
- ModelMapper - Intelligent object mapping library that automatically maps objects to each other.
- Orika - JavaBean-mapping framework that recursively copies (among other capabilities) data from one object to another.
- reMap - Lambda and method handle-based mapping which requires code and not annotations if objects have different names.