awesome-java
A curated list of awesome frameworks, libraries and software for the Java programming language.
https://github.com/eric-erki/awesome-java
Last synced: 6 days ago
JSON representation
-
Projects
-
Template Engine
- Thymeleaf - Aims to be a substitute for JSP and works for XML files.
-
Testing
- GreenMail - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. (GPL-2.0-only)
- Serenity BDD - Automated Acceptance testing and reporting library that works with Cucumber, JBehave and JUnit to make it easier to write high quality executable specifications.
- ConcurrentUnit - Toolkit for testing multi-threaded and asynchronous applications.
- Hoverfly Java - Native bindings for Hoverfly, a proxy which allows you to simulate HTTP services.
- Karate - DSL that combine API test-automation, mocks and performance-testing making testing REST/HTTP services easy.
- Cucumber - Provides a way to describe features in a plain language which customers can understand.
- J8Spec - Follows a Jasmine-like syntax.
- Lamdba Behave - Aims to provide a fluent API to write tests in long and descriptive sentences that read like plain English.
- Beanmother - Sets up beans from YAML fixtures.
- Fixture Factory - Generates fake objects from a template.
- jFairy - Fake data generator.
- Randomized Testing - JUnit test runner and plugins for running JUnit tests with pseudo-randomness.
- Java Faker - Port of Ruby's fake data generator.
- ArchUnit - Test library for specifying and asserting architecture rules.
- XMLUnit - Simplifies testing for XML output.
- junit-dataprovider - TestNG-like data provider/runner for JUnit.
- Mutability Detector - Reports whether instances of a given class are immutable.
- raml-tester - Tests if a request/response matches a given RAML definition.
- 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.
- Pact JVM - Consumer-driven contract testing.
- Awaitility - DSL for synchronizing asynchronous operations.
- Cukes-REST - Collection of Gherkin steps for REST-service testing using Cucumber.
- PowerMock - Mocks static methods, constructors, final classes and methods, private methods, and removal of static initializers.
- Hamcrest - Matchers that can be combined to create flexible expressions of intent.
- pojo-tester - Automatically performs tests on basic POJO methods. (LGPL-3.0-only)
- REST Assured - DSL for easy testing of REST/HTTP services.
- JUnit - Common testing framework.
- AssertJ - Fluent assertions that improve readability.
-
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)
- 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.
- 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)
- JavaVerbalExpressions - Library that helps with constructing difficult regular expressions.
- JGit - Lightweight, pure Java library implementing the Git version control system.
- minio-java - Provides simple APIs to access any Amazon S3-compatible object storage server.
- 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.
- cactoos - Collection of object-oriented primitives.
- Embulk - Bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services.
-
Version Managers
-
Web Crawling
- Crawler4j - Simple and lightweight web crawler.
- StormCrawler - SDK for building low-latency and scalable web crawlers.
- webmagic - Scalable crawler with downloading, url management, content extraction and persistent.
- StormCrawler - SDK for building low-latency and scalable web crawlers.
-
Web Frameworks
- Vaadin Flow - Event-driven framework that uses standard web components. Server-side architecture with Ajax on the client side.
- 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.
- PrimeFaces - JSF framework with both free and commercial/support versions and frontend components.
- Bootique - Minimally opinionated framework for runnable apps.
- Blade - Lightweight, modular framework that aims to be elegant and simple.
- Grails - Groovy framework that provides a highly productive environment by favoring convention over configuration, no XML and support for mixins.
- Jooby - Scalable, fast and modular micro-framework that offers multiple programming models.
- Ninja - Full-stack web framework.
- Play - Built on Akka, it provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications in Java and Scala.
-
-
Resources
-
Awesome Lists
-
Communities
- r/java - Subreddit for the Java community.
- Stack Overflow - Question/answer platform.
- VirtualJUG - Virtual Java User Group.
-
Frontends
-
Influential Books
-
Podcasts and Screencasts
- The Java Council
- The Java Posse - Discontinued as of 02/2015.
- Marco Behler's Screencasts - Screencasts about modern Java development.
-
Twitter
- Aleksey Shipilëv - Performance geek, benchmarking czar, concurrency bug hunter.
- Brian Goetz - Java Language Architect at Oracle.
- Bruno Borges - Product Manager/Java Jock at Oracle.
- 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 Magazine - Official Java Magazine 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, JUG.ch co-leader, Founder and CEO Data Geekery (jOOQ).
- 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.
- Chris Richardson - Software architect, consultant, and serial entrepreneur, Java Champion, JavaOne Rock Star, \*POJOs in Action- author.
- Josh Long - Spring Advocate at Pivotal, author of O'Reilly's Cloud Native Java- and Building Microservices with Spring Boot, JavaOne Rock Star.
- Randy Shoup - Stitch Fix VP Engineering, speaker, JavaOne Rock Star.
- Arun Gupta - Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase.
- Java EE - Official Java EE Twitter account.
- Adam Bien - Freelance author, JavaOne Rockstar speaker, consultant, Java Champion.
- Spencer Gibb - Software Engineer, Dad, Geek, Co-founder and Lead of Spring Cloud Core @pivotal.
- 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.
- Bruno Borges - Product Manager/Java Jock at Oracle.
- Antonio Goncalves - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
- Holly Cummins - Technical Lead of IBM London's Bluemix Garage, Java Champion, developer, author, JavaOne rockstar.
- Java - Official Java Twitter account.
- Monica Beckwith - Performance consultant, JavaOne Rock Star.
- Sander Mak - Java Champion, author.
- Aleksey Shipilëv - Performance geek, benchmarking czar, concurrency bug hunter.
- Brian Goetz - Java Language Architect at Oracle.
- 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.
- James Weaver - Java/JavaFX/IoT developer, author and speaker.
- Java Magazine - Official Java Magazine account.
- Javin Paul - Well-known Java blogger.
- Lukas Eder - Java Champion, speaker, JUG.ch co-leader, Founder and CEO Data Geekery (jOOQ).
- 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.
- OpenJDK - Official OpenJDK account.
- Peter Lawrey - Peter Lawrey, Java performance expert.
- Reza Rahman - Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker.
- Simon Maple - Java Champion, VirtualJUG founder, LJC leader, RebelLabs author.
- Stephen Colebourne - Java Champion, speaker.
- Trisha Gee - Java Champion and speaker.
-
Websites
-
Programming Languages
Categories
Sub Categories
Twitter
67
Testing
31
Miscellaneous
29
Database
22
REST Frameworks
18
JSON
17
Security
15
Websites
14
Monitoring
14
Utility
14
CLI
13
Awesome Lists
11
Networking
11
Web Frameworks
11
Distributed Applications
10
Bean Mapping
10
Code Analysis
9
Geospatial
9
JVM and JDK
9
Logging
8
Science
8
High Performance
8
Formal Verification
8
HTTP Clients
8
Machine Learning
8
Configuration
8
Bytecode Manipulation
7
Data Structures
7
Functional Programming
7
PDF
7
Development
7
Messaging
7
Dependency Injection
7
Imagery
6
Code Generators
6
Distribution
6
Introspection
5
Performance analysis
5
Serialization
5
Influential Books
5
Natural Language Processing
5
Platform
5
Template Engine
5
Job Scheduling
4
CSV
4
Microservice
4
ORM
4
Date and Time
4
Web Crawling
4
Financial
4
Communities
3
Document Processing
3
Server
3
Native
3
Code Coverage
3
Distributed Transactions
3
Version Managers
3
Build
3
Podcasts and Screencasts
3
Processes
3
Reactive libraries
3
IDE
2
Search
2
Game Development
2
Hypermedia Types
2
GUI
1
Compiler-compiler
1
Caching
1
Constraint Satisfaction Problem Solver
1
Cluster Management
1
Frontends
1
Keywords
java
141
android
13
static-analysis
10
spring-boot
10
monitoring
10
microservices
9
jvm
8
http
7
testing
7
java-library
7
json
7
spring
7
rpc
7
awesome
7
kotlin
6
javafx
6
jdbc
6
static-code-analysis
6
grpc
5
reactive-streams
5
machine-learning
5
awesome-list
5
scala
5
javascript
5
xml
5
reactive
4
testing-tools
4
annotation-processor
4
scheduler
4
code-analysis
4
database
4
serialization
4
framework
4
jackson
4
library
4
python
4
java-8
4
functional-programming
4
http-client
4
nlp
4
c
4
test-automation
3
code-generator
3
performance
3
configuration
3
junit
3
c-plus-plus
3
concurrency
3
circuit-breaker
3
visualization
3