Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-java

A curated list of awesome Java frameworks, libraries and software. Inspired by awesome-python.
https://github.com/java-lang/awesome-java

Last synced: 6 days ago
JSON representation

  • Testing

    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • Arquillian - Integration and functional testing platform with integration of Java EE containers.
    • JMH - Microbenchmarking tool for the JVM.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • Unitils - Testing library divided into modules for unit and integration testing.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
    • JMockit - The Mock Anything Toolkit for Java, mocks static, final methods and more.
  • Functional Programming

    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Functional Java - Implements numerous basic and advanced programming abstractions that assist composition oriented development.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
    • Javaslang - Functional component library built for Java 8+ that provides persistent data types and functional control structures.
  • Constraint Satisfaction Problem Solver

    • Sat4J - A state-of-the-art SAT solver for boolean and optimization problems in Java.
  • Continuous Integration

    • Bamboo - Atlassian's solution with good integration of other products. You can either apply for an Open Source license or buy it.
    • CircleCI - Hosted service with a free trial.
  • Database

    • H2 - Small SQL Database notable for its in-memory functionality.
    • JDBI - Convenient abstraction of JDBC.
    • jOOQ - Generates typesafe code based on SQL schema.
  • Data structures

    • Apache Parquet - A columnar storage format based on assembly algorithms from the Dremel paper by Google.
  • Development

    • DCEVM - Modification of the JVM that allows unlimited redefinition of loaded classes at runtime.
    • Immutables - Scala-like case classes in standard Java.
  • Distributed Applications

    • Apache Storm - Distributed realtime computation system.
    • JGroups - Toolkit for reliable messaging and creating clusters whose nodes can send messages to each other.
    • Orbit - Virtual Actors, adding another level of abstraction to traditional Actors.
    • Quasar - Lightweight threads and actors for the JVM.
  • Distribution

    • Bintray - Version control for binaries which handles the publishing. Can also be used with Maven or Gradle and has a free plan for Open Source Software or several business plans.
    • JitPack - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages.
    • Nexus - Binary management with proxy and caching capabilities.
  • Game Development

    • libGDX - All-round cross-platform, high-level framework.
  • GUI

    • JavaFX - The successor of Swing.
  • Web Frameworks

    • Grails - Groovy framework with the aim to provide a highly productive environment by favoring convention over configuration, no XML and support for mixins.
    • Vaadin - Event-driven framework build on top of GWT. Uses server-side architecture with Ajax on the client-side.
  • Communities

    • r/java - Subreddit for the Java community.
  • Podcasts

  • Twitter

    • Adam Bien - Freelancer: Author, JavaONE Rockstar Speaker, Consultant, Java Champion.
    • Antonio Goncalves - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
    • Arun Gupta - Java Champion, JavaOne Rockstar, UG Leader, Devoxx4Kids-er, Red Hatter.
    • Bruno Borges - Product Manager/Java Jock at Oracle.
    • Ed Burns - Consulting Member of the Technical Staff at Oracle.
    • Eugen Paraschiv - Author of the Spring Security Course.
    • James Weaver - Java/JavaFX/IoT developer, author and speaker.
    • Java EE - Official Java EE Twitter account.
    • Java Magazine - Official Java Magazine account.
    • Java.net - Official Java.net account.
    • Java - Official Java Twitter account.
    • Javin Paul - Well-known Java blogger.
    • Lukas Eder - Founder and CEO Data Geekery (jOOQ).
    • Mario Fusco - RedHatter, JUG coordinator, frequent speaker and author.
    • 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.
    • 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.
    • Tim Boudreau - Author and NetBeans guru.
    • Trisha Gee - Java Champion and speaker.
    • Roberto Cortez - Java EE/JPA expert, speaker, open source
  • Websites

  • High Performance

    • HPPC - Primitive collections.
    • Trove - Primitive collections.
  • Imagery

    • ZXing - Multi-format 1D/2D barcode image processing library.
  • JSON

    • Gson - Serializes Java objects to JSON and vice versa. Good performance with on-the-fly usage.
    • Jackson - Similar to GSON but has performance gains if you need to instantiate the library more often.
  • JVM and JDK

    • JDK 9 - Early access releases of JDK 9.
    • OpenJDK - Open source implementation.
  • REST Frameworks

    • Swagger - Swagger is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services.
    • Jersey - JAX-RS reference implementation.
    • Spark - A Sinatra inspired framework for java.
  • Utility

    • args4j - Command line arguments parser.
    • Guava - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.
    • JADE - Providers a framework and an environment to build and to debug multi-agent systems.
    • JCommander - Command line arguments parser; its been around, active, and maintained by the creator since 2010.
  • Miscellaneous

    • fabric8 - Integration platform for Java containers.
    • Metrics - Create your own metrics or add them for supported frameworks, then expose them via JMX or HTTP, or send them to a database.
    • RoboVM - Commercial framework with a free trial to write native iOS apps in Java.
  • Natural Language Processing

  • PDF

  • Performance analysis

  • Machine Learning

    • Apache Flink - Fast and reliable large-scale data processing engine.
    • Apache Mahout - Scalable algorithms focused on collaborative filtering, clustering and classification.
    • Weka - Collection of algorithms for data mining tasks ranging from pre-processing to visualization.
  • Bytecode Manipulation

    • Byte Buddy - Further simplifies bytecode generation with a fluent API.
    • Javassist - Tries to simplify the editing of bytecode.
  • Cluster Management

    • Singularity - Singularity is a Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks.
  • Code Analysis

    • PMD - Source code analysis of bad coding practices.
    • PMD - Source code analysis of bad coding practices.
  • Compiler-compiler

    • JavaCC - More specific and slightly easier to learn. Has syntactic lookahead.
  • Dependency Injection

    • HK2 - A light-weight and dynamic dependency injection framework.
  • Networking

    • Grizzly - NIO framework. Used as a network layer in Glassfish.
  • Server

    • GlassFish - Open source reference implementation for Java EE sponsored by Oracle.
  • Template Engine