awesome-java
A curated list of awesome frameworks, libraries and software for the Java programming language.
Awesome Java: a curated directory with activity tags
A curated list of Java frameworks, libraries, and software, each entry tagged with how recently it was pushed. The README also explains how multi-repo entries are aggregated for stars and licenses.
How to read the list
Activity indicators sit next to every entry: green for pushed within 3 months, orange for pushed 3 to 12 months ago, and red for no push in over 12 months. Entries spanning several repositories combine their stars, use the most recent push for activity, and show a license only when all repositories agree. That aggregation rule is documented up front.
Architecture and AI entries
The architecture section includes ArchUnit, a test library for specifying and asserting architecture rules, and jMolecules, annotations and interfaces to express design and architecture concepts in code. The AI entries lean heavily into the current wave: AgentScope Java for building distributed, long-running AI agents, LangChain4j for simplifying LLM integration with unified APIs, an MCP Java SDK for the Model Context Protocol, and simple-openai for calling the OpenAI API in the simplest possible way.
Mapping and build tools
Mapping libraries cover MapStruct, a code generator for bean type mappings based on a convention-over-configuration approach, plus ModelMapper and reMap. On the build side the list carries Apache Maven, described as declarative build and dependency management that favors convention over configuration, Gradle with incremental builds programmed via Groovy, and Buck2 for small reusable modules. Related tools include Jib for building optimized container images without a Docker daemon, the Maven Wrapper, Eclipse JKube for Kubernetes deployment, and the git-commit-id plugin for exposing Git revision info to builds.
What the entries look like
Each entry is one line carrying the project name, a star count, a license, an activity tag, and a short description, which keeps the whole thing scannable. The consistent format is what makes a directory this size usable, and the activity tags add the freshness signal most awesome lists lack.
Editorial conclusion
The activity tags are the distinguishing feature here; they turn a static awesome list into something that at least hints at which projects are still alive.
Community notes