From f515d429cb3317554e02ed2b8003cd0714ef30f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Aguilera?= Date: Sat, 12 Sep 2015 13:30:01 +0200 Subject: [PATCH 01/68] Update README.md added JUnitParams to readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a8357c6..89419c6 100644 --- a/README.md +++ b/README.md @@ -534,6 +534,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. +* [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Parameterised tests that don't suck * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. From 12b68546a61c83bf590310c226d04bd85b6d4844 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Aguilera?= Date: Sat, 3 Oct 2015 13:42:37 +0200 Subject: [PATCH 02/68] improved description of JunitParams --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 89419c6..6ebd324 100644 --- a/README.md +++ b/README.md @@ -534,7 +534,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. -* [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Parameterised tests that don't suck +* [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. It provides much better functionalities than JUnit Parametrised runner. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. From e5e1691d7f1e25d7f890a2d4d502268cc2b55706 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Aguilera?= Date: Sat, 31 Oct 2015 15:07:14 +0100 Subject: [PATCH 03/68] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6ebd324..da0b63e 100644 --- a/README.md +++ b/README.md @@ -534,7 +534,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. -* [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. It provides much better functionalities than JUnit Parametrised runner. +* [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. From 4b393ad5b9373932474af9468474fbe1679ff8f2 Mon Sep 17 00:00:00 2001 From: EdwardRaff Date: Sat, 31 Oct 2015 16:22:26 -0400 Subject: [PATCH 04/68] Update README.md adding JSAT to list of ML libraries. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 612d3e2..614fd08 100644 --- a/README.md +++ b/README.md @@ -372,6 +372,7 @@ A curated list of awesome Java frameworks, libraries and software. * [DeepDive](http://deepdive.stanford.edu) - Creates structured information from unstructured data and integrates it into an existing database. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. * [H2O](http://0xdata.com/) - Analytics engine for statistics over big data. +* [JSAT](https://github.com/EdwardRaff/JSAT) - Numerous Machine Learning algorithms for pre-processing, classification, regression, and clustering. Some algorithms suport mult-threaded execution. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. ## Messaging From 6ddff03d86b4e324c31fb9f06e1f635bb008c143 Mon Sep 17 00:00:00 2001 From: EdwardRaff Date: Sat, 31 Oct 2015 16:25:16 -0400 Subject: [PATCH 05/68] Update README.md typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 614fd08..49eb50e 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ A curated list of awesome Java frameworks, libraries and software. * [DeepDive](http://deepdive.stanford.edu) - Creates structured information from unstructured data and integrates it into an existing database. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. * [H2O](http://0xdata.com/) - Analytics engine for statistics over big data. -* [JSAT](https://github.com/EdwardRaff/JSAT) - Numerous Machine Learning algorithms for pre-processing, classification, regression, and clustering. Some algorithms suport mult-threaded execution. +* [JSAT](https://github.com/EdwardRaff/JSAT) - Numerous Machine Learning algorithms for pre-processing, classification, regression, and clustering. Some algorithms support mult-threaded execution. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. ## Messaging From 5075b05bcc0203622a470e0fc609b5de62c3811a Mon Sep 17 00:00:00 2001 From: EdwardRaff Date: Sun, 1 Nov 2015 11:29:55 -0500 Subject: [PATCH 06/68] Update README.md adjusting at request --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 49eb50e..111db50 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ A curated list of awesome Java frameworks, libraries and software. * [DeepDive](http://deepdive.stanford.edu) - Creates structured information from unstructured data and integrates it into an existing database. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. * [H2O](http://0xdata.com/) - Analytics engine for statistics over big data. -* [JSAT](https://github.com/EdwardRaff/JSAT) - Numerous Machine Learning algorithms for pre-processing, classification, regression, and clustering. Some algorithms support mult-threaded execution. +* [JSAT](https://github.com/EdwardRaff/JSAT) - Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. ## Messaging From adf312cd1a28382149efe1c0f4c85d6a159c30a6 Mon Sep 17 00:00:00 2001 From: "Anders D. Johnson" Date: Mon, 2 Nov 2015 09:36:55 -0600 Subject: [PATCH 07/68] Fix typos. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4017496..141b2ec 100644 --- a/README.md +++ b/README.md @@ -65,7 +65,7 @@ A curated list of awesome Java frameworks, libraries and software. ## Ancients -*In existence since the beginning of time and wich will continue being used long after the hype has waned.* +*In existence since the beginning of time and which will continue being used long after the hype has waned.* * [Apache Ant](http://ant.apache.org/) - Build process management with XML. * [cglib](https://github.com/cglib/cglib) - Bytecode generation library. @@ -86,7 +86,7 @@ A curated list of awesome Java frameworks, libraries and software. ## Build -*Tools which handle the buildcycle and dependencies of an application.* +*Tools which handle the build cycle and dependencies of an application.* * [Apache Maven](http://maven.apache.org/) - Declarative build and dependency management which favors convention over configuration. It might be preferable to Apache Ant which uses a rather procedural approach and can be difficult to maintain. * [Bazel](http://bazel.io) - Build tool from Google that builds code quickly and reliably. From b077b38228644eb2e4d31f31af8c7c89ccbec197 Mon Sep 17 00:00:00 2001 From: Julien Ponge Date: Mon, 9 Nov 2015 11:16:03 +0100 Subject: [PATCH 08/68] Mention of Eclipse Golo --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 405b595..2aa7865 100644 --- a/README.md +++ b/README.md @@ -363,6 +363,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Clojure](http://clojure.org/) - Dynamically typed programming language that can be seen as a modern take on Lisp. * [Ceylon](http://ceylon-lang.org/) - Statically typed object-oriented language developed by RedHat. * [Kotlin](http://kotlinlang.org/) - JetBrain's statically typed programming language for the JVM, Android and the browser. +* [Eclipse Golo](http://golo-lang.org/) - A simple dynamic language that makes extensive usage of `invokedynamic`, currently an incubating Eclipse Technology project. ## Logging From 7c1a4ede12c97223dad9962181eff773ab06e7f3 Mon Sep 17 00:00:00 2001 From: kasonyang Date: Mon, 9 Nov 2015 23:10:28 +0800 Subject: [PATCH 09/68] add eclipse swt --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 405b595..afbacf8 100644 --- a/README.md +++ b/README.md @@ -306,6 +306,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - The successor of Swing. * [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - Visual layout tool for JavaFX applications. +* [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. ## High Performance From 27675cb9224992e09cc19a87dda7658c421b6813 Mon Sep 17 00:00:00 2001 From: gandrianakis Date: Wed, 11 Nov 2015 10:10:03 +0200 Subject: [PATCH 10/68] Added Axon Framework --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 705bff1..1dc3cee 100644 --- a/README.md +++ b/README.md @@ -230,6 +230,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Akka](http://akka.io) - Toolkit and runtime for building concurrent, distributed, and fault tolerant event-driven applications. * [Apache Storm](http://storm.incubator.apache.org/) - Realtime computation system. * [Apache ZooKeeper](http://zookeeper.apache.org/) - Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems. +* [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS * [Hazelcast](http://hazelcast.org/) - Highly scalable in-memory datagrid. * [Hystrix](https://github.com/Netflix/Hystrix) - Provides latency and fault tolerance. * [JGroups](http://www.jgroups.org/) - Toolkit for reliable messaging and creating clusters. From 464f7079dad6b8b650dcd4fbf0b24f114114af7d Mon Sep 17 00:00:00 2001 From: gandrianakis Date: Wed, 11 Nov 2015 10:13:54 +0200 Subject: [PATCH 11/68] Fixed axon --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1dc3cee..5366109 100644 --- a/README.md +++ b/README.md @@ -230,7 +230,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Akka](http://akka.io) - Toolkit and runtime for building concurrent, distributed, and fault tolerant event-driven applications. * [Apache Storm](http://storm.incubator.apache.org/) - Realtime computation system. * [Apache ZooKeeper](http://zookeeper.apache.org/) - Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems. -* [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS +* [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS applications * [Hazelcast](http://hazelcast.org/) - Highly scalable in-memory datagrid. * [Hystrix](https://github.com/Netflix/Hystrix) - Provides latency and fault tolerance. * [JGroups](http://www.jgroups.org/) - Toolkit for reliable messaging and creating clusters. From 74be48c912b075487303bcf698bc37cec2abd70f Mon Sep 17 00:00:00 2001 From: George Andrianakis Date: Wed, 11 Nov 2015 19:52:37 +0200 Subject: [PATCH 12/68] Added missing '.' for Axon framework --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5366109..7034782 100644 --- a/README.md +++ b/README.md @@ -230,7 +230,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Akka](http://akka.io) - Toolkit and runtime for building concurrent, distributed, and fault tolerant event-driven applications. * [Apache Storm](http://storm.incubator.apache.org/) - Realtime computation system. * [Apache ZooKeeper](http://zookeeper.apache.org/) - Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems. -* [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS applications +* [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS applications. * [Hazelcast](http://hazelcast.org/) - Highly scalable in-memory datagrid. * [Hystrix](https://github.com/Netflix/Hystrix) - Provides latency and fault tolerance. * [JGroups](http://www.jgroups.org/) - Toolkit for reliable messaging and creating clusters. From 90958cc3ace093d7666bf1486d3a5ccb7dddfa7a Mon Sep 17 00:00:00 2001 From: ReadmeCritic Date: Fri, 13 Nov 2015 13:35:05 -0800 Subject: [PATCH 13/68] Update redirects in Readme --- README.md | 62 +++++++++++++++++++++++++++---------------------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 7034782..84d37af 100644 --- a/README.md +++ b/README.md @@ -90,7 +90,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Maven](http://maven.apache.org/) - Declarative build and dependency management which favors convention over configuration. It might be preferable to Apache Ant which uses a rather procedural approach and can be difficult to maintain. * [Bazel](http://bazel.io) - Build tool from Google that builds code quickly and reliably. -* [Gradle](http://www.gradle.org/) - Incremental builds which are programmed via Groovy instead of declaring XML. Works well with Maven's dependency management. +* [Gradle](http://gradle.org/) - Incremental builds which are programmed via Groovy instead of declaring XML. Works well with Maven's dependency management. ## Bytecode Manipulation @@ -99,7 +99,7 @@ A curated list of awesome Java frameworks, libraries and software. * [ASM](http://asm.ow2.org/) - All purpose, low level, bytecode manipulation and analysis. * [Byte Buddy](http://bytebuddy.net/) - Further simplifies bytecode generation with a fluent API. * [Byteman](http://byteman.jboss.org/) - Manipulate bytecode at runtime via DSL (rules) mainly for testing/troubleshooting. -* [Javassist](http://jboss-javassist.github.io/javassist) - Tries to simplify the editing of bytecode. +* [Javassist](http://jboss-javassist.github.io/javassist/) - Tries to simplify the editing of bytecode. ## Cluster Management @@ -147,9 +147,9 @@ A curated list of awesome Java frameworks, libraries and software. * [Bamboo](https://www.atlassian.com/software/bamboo) - Atlassian's solution with good integration of their other products. You can either apply for an open-source license or buy it. * [CircleCI](https://circleci.com/) - Hosted service with a free trial. -* [Codeship](https://www.codeship.io/features) - Hosted services with a limited free plan. +* [Codeship](https://codeship.com/features) - Hosted services with a limited free plan. * [fabric8](http://fabric8.io/) - Integration platform for containers. -* [Go](http://www.thoughtworks.com/products/go-continuous-delivery) - ThoughtWork's open-source solution. +* [Go](https://www.thoughtworks.com/go/) - ThoughtWork's open-source solution. * [Jenkins](http://jenkins-ci.org/) - Provides server-based deployment services. * [TeamCity](http://www.jetbrains.com/teamcity/) - JetBrain's CI solution with a free version. * [Travis](https://travis-ci.org) - Hosted service often used for open-source projects. @@ -183,7 +183,7 @@ A curated list of awesome Java frameworks, libraries and software. *Efficient and specific data structures.* -* [Apache Parquet](https://parquet.incubator.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. +* [Apache Parquet](http://parquet.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. * [Protobuf](https://github.com/google/protobuf) - Google's data interchange format. * [SBE](https://github.com/real-logic/simple-binary-encoding) - Simple Binary Encoding, one of the fastest message formats around. * [Wire](https://github.com/square/wire) - Clean, lightweight protocol buffers. @@ -200,7 +200,7 @@ A curated list of awesome Java frameworks, libraries and software. ## Dependency Injection -*Libraries that help to realize the [Inversion of Control](http://en.wikipedia.org/wiki/Inversion_of_control) paradigm.* +*Libraries that help to realize the [Inversion of Control](https://en.wikipedia.org/wiki/Inversion_of_control) paradigm.* * [Apache DeltaSpike](https://deltaspike.apache.org/) - CDI extension framework. * [Dagger2](http://google.github.io/dagger/) - Compile-time injection framework without reflection. @@ -219,7 +219,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Immutables](http://immutables.github.io/) - Scala-like case classes. * [JHipster](https://github.com/jhipster/generator-jhipster) - Yeoman source code generator to create applications based on Spring Boot and AngularJS. * [JRebel](http://zeroturnaround.com/software/jrebel/) - Commercial software that instantly reloads code and configuration changes without redeploys. -* [Lombok](http://projectlombok.org/) - Code-generator which aims to reduce the verbosity. +* [Lombok](https://projectlombok.org/) - Code-generator which aims to reduce the verbosity. * [Spring Loaded](https://github.com/spring-projects/spring-loaded) - Class reloading agent. * [vert.x](http://vertx.io/) - Polyglot event-driven application framework. @@ -228,7 +228,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries and frameworks for writing distributed and fault-tolerant applications.* * [Akka](http://akka.io) - Toolkit and runtime for building concurrent, distributed, and fault tolerant event-driven applications. -* [Apache Storm](http://storm.incubator.apache.org/) - Realtime computation system. +* [Apache Storm](http://storm.apache.org/) - Realtime computation system. * [Apache ZooKeeper](http://zookeeper.apache.org/) - Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems. * [Axon Framework](http://www.axonframework.org/) - Framework for creating CQRS applications. * [Hazelcast](http://hazelcast.org/) - Highly scalable in-memory datagrid. @@ -252,7 +252,7 @@ A curated list of awesome Java frameworks, libraries and software. *Tools which handle the distribution of applications in native formats.* * [Bintray](https://bintray.com/) - 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. -* [Capsule](http://capsule.io) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. +* [Capsule](http://www.capsule.io/) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. * [Central Repository](http://search.maven.org/) - Largest binary component repository available as a free service to the open-source community. Default used by Apache Maven and available in all other build tools. * [IzPack](http://izpack.org/) - Setup authoring tool for cross-platform deployments. * [JitPack](https://jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. @@ -298,8 +298,8 @@ A curated list of awesome Java frameworks, libraries and software. *Frameworks that support the development of games.* * [jMonkeyEngine](http://jmonkeyengine.org/) - Game engine for modern 3D development. -* [libGDX](http://libgdx.badlogicgames.com/) - All-round cross-platform, high-level framework. -* [LWJGL](http://lwjgl.org/) - Robust framework that abstracts libraries like OpenGL/CL/AL. +* [libGDX](https://libgdx.badlogicgames.com/) - All-round cross-platform, high-level framework. +* [LWJGL](http://www.lwjgl.org/) - Robust framework that abstracts libraries like OpenGL/CL/AL. ## GUI @@ -344,7 +344,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that simplify JSON processing.* -* [Genson](http://owlike.github.io/genson) - Powerful and easy to use Java to JSON conversion library. +* [Genson](http://owlike.github.io/genson/) - Powerful and easy to use Java to JSON conversion library. * [Gson](https://github.com/google/gson) - Serializes objects to JSON and vice versa. Good performance with on-the-fly usage. * [Jackson](http://wiki.fasterxml.com/JacksonHome) - Similar to GSON but has performance gains if you need to instantiate the library more often. * [LoganSquare](https://github.com/bluelinelabs/LoganSquare) - JSON parsing and serializing library based on Jackson's streaming API. Outpeforms GSON & Jackson's library. @@ -372,10 +372,10 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that log the behavior of an application.* * [Apache Log4j 2](http://logging.apache.org/log4j/) - Complete rewrite with a powerful plugin and configuration architecture. -* [kibana](http://www.elasticsearch.org/overview/kibana/) - Analyzes and visualizes log files. +* [kibana](https://www.elastic.co/products/kibana) - Analyzes and visualizes log files. * [Logback](http://logback.qos.ch/) - Robust logging library with interesting configuration options via Groovy. -* [logstash](http://logstash.net/) - Tool for managing log files. -* [Metrics](http://metrics.codahale.com/) - Expose metrics via JMX or HTTP and can send them to a database. +* [logstash](https://www.elastic.co/products/logstash) - Tool for managing log files. +* [Metrics](https://github.com/dropwizard/metrics) - Expose metrics via JMX or HTTP and can send them to a database. * [SLF4J](http://www.slf4j.org/) - Abstraction layer which is to be used with an implementation. ## Machine Learning @@ -388,7 +388,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Spark](http://spark.apache.org/) - Data analytics cluster computing framework. * [DeepDive](http://deepdive.stanford.edu) - Creates structured information from unstructured data and integrates it into an existing database. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. -* [H2O](http://0xdata.com/) - Analytics engine for statistics over big data. +* [H2O](http://h2o.ai/) - Analytics engine for statistics over big data. * [JSAT](https://github.com/EdwardRaff/JSAT) - Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. @@ -414,7 +414,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Lanterna](https://code.google.com/p/lanterna/) - Easy console text GUI library similar to curses. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. -* [RoboVM](http://www.robovm.org/) - Commercial framework with a free trial to write native iOS apps. +* [RoboVM](https://robovm.com/) - Commercial framework with a free trial to write native iOS apps. ## Monitoring @@ -425,7 +425,7 @@ A curated list of awesome Java frameworks, libraries and software. * [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. * [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. * [New Relic](http://newrelic.com/) - Commercial performance monitor. -* [SPM](http://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. +* [SPM](https://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. * [Takipi](https://www.takipi.com/) - Commercial in-production error monitoring and debugging. ## Native @@ -460,7 +460,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Ebean](http://ebean-orm.github.io/) - Provides simple and fast data access. * [EclipseLink](https://www.eclipse.org/eclipselink/) - Supports a number of persistence standards: JPA, JAXB, JCA and SDO. * [Hibernate](http://hibernate.org/orm/) - Robust and widely used with an active community. -* [MyBatis](http://mybatis.github.io/mybatis-3/) - Couples objects with stored procedures or SQL statements. +* [MyBatis](http://mybatis.org/mybatis-3/) - Couples objects with stored procedures or SQL statements. * [OrmLite](http://ormlite.com/) - Lightweight package avoiding the complexity and overhead of other ORM products. ## PDF @@ -478,7 +478,7 @@ A curated list of awesome Java frameworks, libraries and software. *Tools for performance analysis, profiling and benchmarking.* -* [jHiccup](http://github.com/giltene/jHiccup) - Logs and records platform JVM stalls. +* [jHiccup](https://github.com/giltene/jHiccup) - Logs and records platform JVM stalls. * [JMH](http://openjdk.java.net/projects/code-tools/jmh/) - Microbenchmarking tool for the JVM. * [JProfiler](https://www.ej-technologies.com/products/jprofiler/overview.html) - Commercial profiler. * [LatencyUtils](https://github.com/LatencyUtils/LatencyUtils) - Utilities for latency measurement and reporting. @@ -491,7 +491,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - Provide a standard for asynchronous stream processing with non-blocking backpressure. * [Reactor](http://projectreactor.io/) - Library for building reactive fast-data applications. -* [RxJava](https://github.com/Netflix/RxJava) - Library for composing asynchronous and event-based programs using observable sequences from the JVM. +* [RxJava](https://github.com/ReactiveX/RxJava) - Library for composing asynchronous and event-based programs using observable sequences from the JVM. ## REST Frameworks @@ -504,7 +504,7 @@ A curated list of awesome Java frameworks, libraries and software. * [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBOSS Netty HTTP stack to provide scaling and performance. * [RestX](http://restx.io) - Framework based on annotation processing and compile-time source generation. * [Retrofit](http://square.github.io/retrofit/) - Type-safe REST client. -* [Spark](http://www.sparkjava.com/) - Sinatra inspired framework. +* [Spark](http://sparkjava.com/) - Sinatra inspired framework. * [Swagger](http://swagger.io/) - Swagger is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services. ## Science @@ -520,7 +520,7 @@ A curated list of awesome Java frameworks, libraries and software. *Engines which index documents for search and analysis.* * [Apache Solr](http://lucene.apache.org/solr/) - Enterprise search engine optimized for high volume traffic. -* [Elasticsearch](http://www.elasticsearch.org/) - Distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents. +* [Elasticsearch](https://www.elastic.co/) - Distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents. ## Security @@ -528,7 +528,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Shiro](http://shiro.apache.org/) - Performs authentication, authorization, cryptography and session management. * [Bouncy Castle](https://www.bouncycastle.org/java.html) - All-purpose cryptographic library. JCA provider, wide range of functions from basic helpers to PGP/SMIME operations. -* [Cryptomator](http://cryptomator.org/) - Multiplatform transparent client-side encryption of files in the cloud. +* [Cryptomator](https://cryptomator.org/) - Multiplatform transparent client-side encryption of files in the cloud. * [Google Keyczar](https://github.com/google/keyczar) - Easy to use, yet safe encryption framework with key versioning. * [Keycloak](http://keycloak.jboss.org/) - Integrated SSO and IDM for browser apps and RESTful web services. * [PicketLink](http://picketlink.org/) - Umbrella project for security and identity management. @@ -557,7 +557,7 @@ A curated list of awesome Java frameworks, libraries and software. *Tools which substitute expressions in a template.* * [Apache Velocity](http://velocity.apache.org/) - Templates for HTML pages, emails or source code generation in general. -* [FreeMarker](http://freemarker.org/) - General templating engine without any heavyweight or opinionated dependencies. +* [FreeMarker](http://freemarker.incubator.apache.org/) - General templating engine without any heavyweight or opinionated dependencies. * [Handlebars.java](http://jknack.github.io/handlebars.java/) - Logic-less and semantic Mustache templates. * [Thymeleaf](http://www.thymeleaf.org/) - Aims to be a substitute for JSP and works for XML files in general. @@ -622,9 +622,9 @@ A curated list of awesome Java frameworks, libraries and software. * [Grails](https://grails.org/) - Groovy framework with the aim to provide a highly productive environment by favoring convention over configuration, no XML and support for mixins. * [Ninja](http://www.ninjaframework.org/) - Full stack web framework. * [Pippo](http://www.pippo.ro/) - Small, highly modularized Sinatra-like framework. -* [Play](http://www.playframework.com/) - Uses convention over configuration, hot code reloading and display of errors in the browser. +* [Play](https://www.playframework.com/) - Uses convention over configuration, hot code reloading and display of errors in the browser. * [PrimeFaces](http://primefaces.org/) - JSF framework which has a free and a commercial version with support. Provides several frontend components. -* [Ratpack](http://www.ratpack.io/) - Set of libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. +* [Ratpack](http://ratpack.io/) - Set of libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. * [Spring Boot](http://projects.spring.io/spring-boot/) - Microframework which simplifies the development of new Spring applications. * [Spring](http://projects.spring.io/spring-framework/) - Provides many packages ranging from dependency injection to aspect-oriented programming to security. * [Vaadin](https://vaadin.com/) - Event-driven framework build on top of GWT. Uses server-side architecture with Ajax on the client-side. @@ -635,7 +635,7 @@ A curated list of awesome Java frameworks, libraries and software. *Active discussions.* -* [r/java](http://www.reddit.com/r/java) - Subreddit for the Java community. +* [r/java](https://www.reddit.com/r/java) - Subreddit for the Java community. * [stackoverflow](http://stackoverflow.com/questions/tagged/java) - Question/answer platform. * [vJUG](http://virtualjug.com/) - Virtual Java User Group. @@ -697,10 +697,10 @@ A curated list of awesome Java frameworks, libraries and software. * [InfoQ](http://www.infoq.com/) * [Java Code Geeks](http://www.javacodegeeks.com/) * [Java, SQL, and jOOQ](http://blog.jooq.org/) -* [Java.net](http://java.net/) -* [Javalobby](http://java.dzone.com/) +* [Java.net](https://home.java.net/) +* [Javalobby](https://dzone.com/java-jdk-development-tutorials-tools-news) * [JavaWorld](http://www.javaworld.com/) -* [JAXenter](http://jaxenter.com/) +* [JAXenter](https://jaxenter.com/) * [RebelLabs](http://zeroturnaround.com/rebellabs/) * [The Java Specialist' Newsletter](http://www.javaspecialists.eu/archive/archive.jsp) * [The Takipi Blog](http://blog.takipi.com/) From 568391756198551a73c1a8589f677313743fe846 Mon Sep 17 00:00:00 2001 From: Vlad Mihalcea Date: Fri, 20 Nov 2015 11:09:09 +0200 Subject: [PATCH 14/68] #261 Add FlexyPool to the Database section #261 Add FlexyPool to the Database section --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 84d37af..6845473 100644 --- a/README.md +++ b/README.md @@ -178,6 +178,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Presto](https://github.com/facebook/presto) - Distributed SQL query engine for big data. * [Querydsl](http://www.querydsl.com/) - Typesafe unified queries. * [Redisson](https://github.com/mrniko/redisson) - Allows for distributed and scalable data structures on top of a Redis server. +* [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. ## Data structures From 7268c0b542dd2206aef77d3a6c8792e2dbdb8741 Mon Sep 17 00:00:00 2001 From: Vijay Krishna Palepu Date: Sun, 22 Nov 2015 18:08:51 -0800 Subject: [PATCH 15/68] PIT Mutation Testing framework --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6845473..02d6161 100644 --- a/README.md +++ b/README.md @@ -579,6 +579,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JUnit](http://junit.org/) - Common testing framework. * [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. +* [PIT](http://pitest.org) - Mutation-testing framework for Java and JVM. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. * [Selenide](http://selenide.org/) - Concise API around Selenium to write stable and readable UI tests. From 34ed964a52ecf00491b5dc3d2157176b687d489e Mon Sep 17 00:00:00 2001 From: Prasanth Jayachandran Date: Mon, 23 Nov 2015 05:28:06 -0600 Subject: [PATCH 16/68] Add Apache Hive to Database --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6845473..1fc0113 100644 --- a/README.md +++ b/README.md @@ -165,6 +165,7 @@ A curated list of awesome Java frameworks, libraries and software. *Everything which simplifies interactions with the database.* +* [Apache Hive] (https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. * [Apache Phoenix](http://phoenix.apache.org/) - High performance relational database layer over HBase for low latency applications. * [Crate](https://crate.io/) - Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. * [Flyway](http://flywaydb.org/) - Simple database migration tool. From 2e53606ee7b864a60b1f916920ca8f1a200f5296 Mon Sep 17 00:00:00 2001 From: Prasanth Jayachandran Date: Mon, 23 Nov 2015 06:08:49 -0600 Subject: [PATCH 17/68] Add Apache Orc --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1fc0113..d6e7d94 100644 --- a/README.md +++ b/README.md @@ -185,6 +185,7 @@ A curated list of awesome Java frameworks, libraries and software. *Efficient and specific data structures.* +* [Apache Orc](https://orc.apache.org/) - Fast and efficient columnar storage format for hadoop based workloads. * [Apache Parquet](http://parquet.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. * [Protobuf](https://github.com/google/protobuf) - Google's data interchange format. * [SBE](https://github.com/real-logic/simple-binary-encoding) - Simple Binary Encoding, one of the fastest message formats around. From 842d18338eed0288787173bceb1f2a836a664c04 Mon Sep 17 00:00:00 2001 From: Desprez Jean-Marc Date: Tue, 24 Nov 2015 11:00:10 +0100 Subject: [PATCH 18/68] Add Persistent Collection --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6845473..abac61d 100644 --- a/README.md +++ b/README.md @@ -185,6 +185,7 @@ A curated list of awesome Java frameworks, libraries and software. *Efficient and specific data structures.* * [Apache Parquet](http://parquet.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. +* [Persistent Collection](http://pcollections.org/) - Persistent and immutable analogue of the Java Collections Framework. * [Protobuf](https://github.com/google/protobuf) - Google's data interchange format. * [SBE](https://github.com/real-logic/simple-binary-encoding) - Simple Binary Encoding, one of the fastest message formats around. * [Wire](https://github.com/square/wire) - Clean, lightweight protocol buffers. From edafbb9c5a96b80ab260e4b3a1facfd0e2294abe Mon Sep 17 00:00:00 2001 From: Din Date: Tue, 24 Nov 2015 19:52:22 +0900 Subject: [PATCH 19/68] Added missing '.' for ThreeTenBP,SWT,Groovy,WebSphere,JGiven,GreenMail --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 6845473..e77cc70 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries related to handling date and time.* * [Joda-Time](http://www.joda.org/joda-time/) - De facto standard date/time-library before Java 8. -* [ThreeTenBP](https://github.com/ThreeTen/threetenbp) - Port of JSR 310 (java.time package) by the author of Joda-Time. +* [ThreeTenBP](https://github.com/ThreeTen/threetenbp) - Port of JSR 310 (java.time package) by the author of Joda-Time. * [Time4J](https://github.com/MenoData/Time4J) - Advanced date and time library. ## Dependency Injection @@ -308,7 +308,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - The successor of Swing. * [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - Visual layout tool for JavaFX applications. -* [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. +* [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. ## High Performance @@ -362,7 +362,7 @@ A curated list of awesome Java frameworks, libraries and software. *Languages other than Java that can be used to write JVM applications.* * [Scala](http://www.scala-lang.org/) - Statically typed programming language that fuses the object - oriented model and functional programming ideas. -* [Groovy](http://www.groovy-lang.org/) - Optionally typed and dynamic language, with static-typing and static compilation capabilities. Currently an incubating Apache project +* [Groovy](http://www.groovy-lang.org/) - Optionally typed and dynamic language, with static-typing and static compilation capabilities. Currently an incubating Apache project. * [Clojure](http://clojure.org/) - Dynamically typed programming language that can be seen as a modern take on Lisp. * [Ceylon](http://ceylon-lang.org/) - Statically typed object-oriented language developed by RedHat. * [Kotlin](http://kotlinlang.org/) - JetBrain's statically typed programming language for the JVM, Android and the browser. @@ -550,7 +550,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Tomcat](http://tomcat.apache.org/) - Robust all-round server for Servlet and JSP. * [Apache TomEE](http://tomee.apache.org/) - Tomcat plus Java EE. * [Jetty](http://www.eclipse.org/jetty/) - Lightweight, small server, often embedded in projects. -* [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM +* [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM. * [WildFly](http://www.wildfly.org/) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support. ## Template Engine @@ -574,7 +574,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. * [Gatling](http://gatling.io/) - Load testing tool designed for ease of use, maintainability and high performance. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. -* [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG +* [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. * [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. @@ -589,7 +589,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. * [WireMock](http://wiremock.org/) - Stubbs and mocks web services. * [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. -* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. +* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. ## Utility From e191a223a0c7017c9af20d67b1c1c5dcdbea8536 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 25 Nov 2015 20:23:00 +0100 Subject: [PATCH 20/68] Removed languages (#267) and did an alphasort plus trimming --- README.md | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 277da57..e7cb672 100644 --- a/README.md +++ b/README.md @@ -168,6 +168,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Hive] (https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. * [Apache Phoenix](http://phoenix.apache.org/) - High performance relational database layer over HBase for low latency applications. * [Crate](https://crate.io/) - Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. +* [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. * [Flyway](http://flywaydb.org/) - Simple database migration tool. * [H2](http://h2database.com/) - Small SQL Database notable for its in-memory functionality. * [HikariCP](https://github.com/brettwooldridge/HikariCP) - High performance JDBC connection pool. @@ -179,20 +180,19 @@ A curated list of awesome Java frameworks, libraries and software. * [Presto](https://github.com/facebook/presto) - Distributed SQL query engine for big data. * [Querydsl](http://www.querydsl.com/) - Typesafe unified queries. * [Redisson](https://github.com/mrniko/redisson) - Allows for distributed and scalable data structures on top of a Redis server. -* [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. ## Data structures *Efficient and specific data structures.* -* [Apache Orc](https://orc.apache.org/) - Fast and efficient columnar storage format for hadoop based workloads. +* [Apache Avro](https://avro.apache.org/) - Data interchange format featuring among others: dynamic typing, untagged data, absence of manually assigned IDs. +* [Apache Orc](https://orc.apache.org/) - Fast and efficient columnar storage format for hadoop based workloads. * [Apache Parquet](http://parquet.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. +* [Apache Thrift](https://thrift.apache.org/) - Data interchange format that originated at Facebook. * [Persistent Collection](http://pcollections.org/) - Persistent and immutable analogue of the Java Collections Framework. * [Protobuf](https://github.com/google/protobuf) - Google's data interchange format. * [SBE](https://github.com/real-logic/simple-binary-encoding) - Simple Binary Encoding, one of the fastest message formats around. * [Wire](https://github.com/square/wire) - Clean, lightweight protocol buffers. -* [Apache Thrift](https://thrift.apache.org/) - Data interchange format that originated at Facebook. -* [Apache Avro](https://avro.apache.org/) - Data interchange format featuring among others: dynamic typing, untagged data, absence of manually assigned IDs. ## Date and Time @@ -291,11 +291,11 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that facilitate functional programming.* * [Cyclops](https://github.com/aol/cyclops) - Monad and stream utilities, comprehensions, pattern matching, trampolines and much more. +* [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms. * [Fugue](https://bitbucket.org/atlassian/fugue) - Functional extensions to Guava. * [Functional Java](http://www.functionaljava.org) - Implements numerous basic and advanced programming abstractions that assist composition-oriented development. * [Javaslang](http://javaslang.com) - Functional component library that provides persistent data types and functional control structures. * [jOOλ](https://github.com/jOOQ/jOOL) - Extension to Java 8 which aims to fix gaps in lambda, providing numerous missing types and a rich set of sequential Stream API additions. -* [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms. ## Game Development @@ -360,17 +360,6 @@ A curated list of awesome Java frameworks, libraries and software. * [JDK 9](https://jdk9.java.net/) - Early access releases of JDK 9. * [OpenJDK](http://openjdk.java.net/) - Open-source implementation. -## Languages - -*Languages other than Java that can be used to write JVM applications.* - -* [Scala](http://www.scala-lang.org/) - Statically typed programming language that fuses the object - oriented model and functional programming ideas. -* [Groovy](http://www.groovy-lang.org/) - Optionally typed and dynamic language, with static-typing and static compilation capabilities. Currently an incubating Apache project. -* [Clojure](http://clojure.org/) - Dynamically typed programming language that can be seen as a modern take on Lisp. -* [Ceylon](http://ceylon-lang.org/) - Statically typed object-oriented language developed by RedHat. -* [Kotlin](http://kotlinlang.org/) - JetBrain's statically typed programming language for the JVM, Android and the browser. -* [Eclipse Golo](http://golo-lang.org/) - A simple dynamic language that makes extensive usage of `invokedynamic`, currently an incubating Eclipse Technology project. - ## Logging *Libraries that log the behavior of an application.* @@ -542,8 +531,8 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that handle serialization with high efficiency.* * [FlatBuffers](https://github.com/google/flatbuffers) - Memory efficient serialization library that can access serialized data without unpacking and parsing it. -* [Kryo](https://github.com/EsotericSoftware/kryo) - Fast and efficient object graph serialization framework. * [FST](https://github.com/RuedigerMoeller/fast-serialization) - JDK compatible high performance object graph serialization. +* [Kryo](https://github.com/EsotericSoftware/kryo) - Fast and efficient object graph serialization framework. * [MessagePack](https://github.com/msgpack/msgpack-java) - Efficient binary serialization format. ## Server @@ -576,12 +565,14 @@ A curated list of awesome Java frameworks, libraries and software. * [Citrus](http://citrusframework.org/) - Integration testing framework with focus on client- and serverside messaging. * [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. * [Gatling](http://gatling.io/) - Load testing tool designed for ease of use, maintainability and high performance. +* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. * [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. * [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. +* [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. * [Selenide](http://selenide.org/) - Concise API around Selenium to write stable and readable UI tests. @@ -591,8 +582,6 @@ A curated list of awesome Java frameworks, libraries and software. * [Truth](https://github.com/google/truth) - Google's assertion and proposition framework. * [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. * [WireMock](http://wiremock.org/) - Stubbs and mocks web services. -* [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. -* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. ## Utility From 43e5dd72bab5884a1f599e445c83bc958ac5177d Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 25 Nov 2015 20:24:07 +0100 Subject: [PATCH 21/68] Removed language category --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index e7cb672..269760f 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,6 @@ A curated list of awesome Java frameworks, libraries and software. - [Imagery](#imagery) - [JSON](#json) - [JVM and JDK](#jvm-and-jdk) - - [Languages](#languages) - [Logging](#logging) - [Machine Learning](#machine-learning) - [Messaging](#messaging) From b14d01d0da74ce401a1935e9a2eb03f54f2313c8 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 25 Nov 2015 20:29:30 +0100 Subject: [PATCH 22/68] Added graylog as alternative to kibana --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 269760f..9aa56c5 100644 --- a/README.md +++ b/README.md @@ -364,7 +364,8 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that log the behavior of an application.* * [Apache Log4j 2](http://logging.apache.org/log4j/) - Complete rewrite with a powerful plugin and configuration architecture. -* [kibana](https://www.elastic.co/products/kibana) - Analyzes and visualizes log files. +* [graylog](https://www.graylog.org/) - Open-source aggregator suited for extended role and permission management. +* [kibana](https://www.elastic.co/products/kibana) - Analyzes and visualizes log files. Some features require payment. * [Logback](http://logback.qos.ch/) - Robust logging library with interesting configuration options via Groovy. * [logstash](https://www.elastic.co/products/logstash) - Tool for managing log files. * [Metrics](https://github.com/dropwizard/metrics) - Expose metrics via JMX or HTTP and can send them to a database. From bc054bb13429fced947049933d1b10c16f98a245 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 25 Nov 2015 20:33:24 +0100 Subject: [PATCH 23/68] Added Winterberg's Java 8 GitHub guide --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9aa56c5..6b51da1 100644 --- a/README.md +++ b/README.md @@ -406,6 +406,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Jimfs](https://github.com/google/jimfs) - In-memory file system. * [Lanterna](https://code.google.com/p/lanterna/) - Easy console text GUI library similar to curses. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. +* [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Popular Java 8 guide. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. * [RoboVM](https://robovm.com/) - Commercial framework with a free trial to write native iOS apps. From 5013135d2a0ca78fdc7cfb88d328dcf1b02874b7 Mon Sep 17 00:00:00 2001 From: Vijay Krishna Palepu Date: Wed, 25 Nov 2015 13:37:18 -0800 Subject: [PATCH 24/68] Merge remote-tracking branch 'akullpp/master' Conflicts: README.md --- README.md | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 02d6161..47ec59c 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,6 @@ A curated list of awesome Java frameworks, libraries and software. - [Imagery](#imagery) - [JSON](#json) - [JVM and JDK](#jvm-and-jdk) - - [Languages](#languages) - [Logging](#logging) - [Machine Learning](#machine-learning) - [Messaging](#messaging) @@ -165,8 +164,10 @@ A curated list of awesome Java frameworks, libraries and software. *Everything which simplifies interactions with the database.* +* [Apache Hive] (https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. * [Apache Phoenix](http://phoenix.apache.org/) - High performance relational database layer over HBase for low latency applications. * [Crate](https://crate.io/) - Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. +* [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. * [Flyway](http://flywaydb.org/) - Simple database migration tool. * [H2](http://h2database.com/) - Small SQL Database notable for its in-memory functionality. * [HikariCP](https://github.com/brettwooldridge/HikariCP) - High performance JDBC connection pool. @@ -178,25 +179,26 @@ A curated list of awesome Java frameworks, libraries and software. * [Presto](https://github.com/facebook/presto) - Distributed SQL query engine for big data. * [Querydsl](http://www.querydsl.com/) - Typesafe unified queries. * [Redisson](https://github.com/mrniko/redisson) - Allows for distributed and scalable data structures on top of a Redis server. -* [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. ## Data structures *Efficient and specific data structures.* +* [Apache Avro](https://avro.apache.org/) - Data interchange format featuring among others: dynamic typing, untagged data, absence of manually assigned IDs. +* [Apache Orc](https://orc.apache.org/) - Fast and efficient columnar storage format for hadoop based workloads. * [Apache Parquet](http://parquet.apache.org/) - Columnar storage format based on assembly algorithms from the Dremel paper by Google. +* [Apache Thrift](https://thrift.apache.org/) - Data interchange format that originated at Facebook. +* [Persistent Collection](http://pcollections.org/) - Persistent and immutable analogue of the Java Collections Framework. * [Protobuf](https://github.com/google/protobuf) - Google's data interchange format. * [SBE](https://github.com/real-logic/simple-binary-encoding) - Simple Binary Encoding, one of the fastest message formats around. * [Wire](https://github.com/square/wire) - Clean, lightweight protocol buffers. -* [Apache Thrift](https://thrift.apache.org/) - Data interchange format that originated at Facebook. -* [Apache Avro](https://avro.apache.org/) - Data interchange format featuring among others: dynamic typing, untagged data, absence of manually assigned IDs. ## Date and Time *Libraries related to handling date and time.* * [Joda-Time](http://www.joda.org/joda-time/) - De facto standard date/time-library before Java 8. -* [ThreeTenBP](https://github.com/ThreeTen/threetenbp) - Port of JSR 310 (java.time package) by the author of Joda-Time. +* [ThreeTenBP](https://github.com/ThreeTen/threetenbp) - Port of JSR 310 (java.time package) by the author of Joda-Time. * [Time4J](https://github.com/MenoData/Time4J) - Advanced date and time library. ## Dependency Injection @@ -288,11 +290,11 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that facilitate functional programming.* * [Cyclops](https://github.com/aol/cyclops) - Monad and stream utilities, comprehensions, pattern matching, trampolines and much more. +* [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms. * [Fugue](https://bitbucket.org/atlassian/fugue) - Functional extensions to Guava. * [Functional Java](http://www.functionaljava.org) - Implements numerous basic and advanced programming abstractions that assist composition-oriented development. * [Javaslang](http://javaslang.com) - Functional component library that provides persistent data types and functional control structures. * [jOOλ](https://github.com/jOOQ/jOOL) - Extension to Java 8 which aims to fix gaps in lambda, providing numerous missing types and a rich set of sequential Stream API additions. -* [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms. ## Game Development @@ -308,7 +310,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - The successor of Swing. * [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - Visual layout tool for JavaFX applications. -* [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. +* [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. ## High Performance @@ -357,23 +359,13 @@ A curated list of awesome Java frameworks, libraries and software. * [JDK 9](https://jdk9.java.net/) - Early access releases of JDK 9. * [OpenJDK](http://openjdk.java.net/) - Open-source implementation. -## Languages - -*Languages other than Java that can be used to write JVM applications.* - -* [Scala](http://www.scala-lang.org/) - Statically typed programming language that fuses the object - oriented model and functional programming ideas. -* [Groovy](http://www.groovy-lang.org/) - Optionally typed and dynamic language, with static-typing and static compilation capabilities. Currently an incubating Apache project -* [Clojure](http://clojure.org/) - Dynamically typed programming language that can be seen as a modern take on Lisp. -* [Ceylon](http://ceylon-lang.org/) - Statically typed object-oriented language developed by RedHat. -* [Kotlin](http://kotlinlang.org/) - JetBrain's statically typed programming language for the JVM, Android and the browser. -* [Eclipse Golo](http://golo-lang.org/) - A simple dynamic language that makes extensive usage of `invokedynamic`, currently an incubating Eclipse Technology project. - ## Logging *Libraries that log the behavior of an application.* * [Apache Log4j 2](http://logging.apache.org/log4j/) - Complete rewrite with a powerful plugin and configuration architecture. -* [kibana](https://www.elastic.co/products/kibana) - Analyzes and visualizes log files. +* [graylog](https://www.graylog.org/) - Open-source aggregator suited for extended role and permission management. +* [kibana](https://www.elastic.co/products/kibana) - Analyzes and visualizes log files. Some features require payment. * [Logback](http://logback.qos.ch/) - Robust logging library with interesting configuration options via Groovy. * [logstash](https://www.elastic.co/products/logstash) - Tool for managing log files. * [Metrics](https://github.com/dropwizard/metrics) - Expose metrics via JMX or HTTP and can send them to a database. @@ -414,6 +406,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Jimfs](https://github.com/google/jimfs) - In-memory file system. * [Lanterna](https://code.google.com/p/lanterna/) - Easy console text GUI library similar to curses. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. +* [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Popular Java 8 guide. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. * [RoboVM](https://robovm.com/) - Commercial framework with a free trial to write native iOS apps. @@ -539,8 +532,8 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries that handle serialization with high efficiency.* * [FlatBuffers](https://github.com/google/flatbuffers) - Memory efficient serialization library that can access serialized data without unpacking and parsing it. -* [Kryo](https://github.com/EsotericSoftware/kryo) - Fast and efficient object graph serialization framework. * [FST](https://github.com/RuedigerMoeller/fast-serialization) - JDK compatible high performance object graph serialization. +* [Kryo](https://github.com/EsotericSoftware/kryo) - Fast and efficient object graph serialization framework. * [MessagePack](https://github.com/msgpack/msgpack-java) - Efficient binary serialization format. ## Server @@ -550,7 +543,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Tomcat](http://tomcat.apache.org/) - Robust all-round server for Servlet and JSP. * [Apache TomEE](http://tomee.apache.org/) - Tomcat plus Java EE. * [Jetty](http://www.eclipse.org/jetty/) - Lightweight, small server, often embedded in projects. -* [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM +* [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM. * [WildFly](http://www.wildfly.org/) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support. ## Template Engine @@ -573,13 +566,18 @@ A curated list of awesome Java frameworks, libraries and software. * [Citrus](http://citrusframework.org/) - Integration testing framework with focus on client- and serverside messaging. * [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. * [Gatling](http://gatling.io/) - Load testing tool designed for ease of use, maintainability and high performance. +* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. * [Hamcrest](http://hamcrest.org/JavaHamcrest/) - Matchers that can be combined to create flexible expressions of intent. -* [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG +* [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG. * [JMockit](http://jmockit.org/) - Mocks static, final methods and more. * [JUnit](http://junit.org/) - Common testing framework. * [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. -* [PIT](http://pitest.org) - Mutation-testing framework for Java and JVM. +<<<<<<< HEAD +* [PIT](http://pitest.org) - Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test-suites. +======= +* [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. +>>>>>>> akullpp/master * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. * [Selenide](http://selenide.org/) - Concise API around Selenium to write stable and readable UI tests. @@ -589,8 +587,11 @@ A curated list of awesome Java frameworks, libraries and software. * [Truth](https://github.com/google/truth) - Google's assertion and proposition framework. * [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. * [WireMock](http://wiremock.org/) - Stubbs and mocks web services. +<<<<<<< HEAD * [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. -* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. +* [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. +======= +>>>>>>> akullpp/master ## Utility From 221b7a1e42e8d0e4e838dff4574630b1a5f5b4d0 Mon Sep 17 00:00:00 2001 From: Vijay Krishna Palepu Date: Wed, 25 Nov 2015 13:44:25 -0800 Subject: [PATCH 25/68] Correcting the order of PIT --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7a5b666..75ba2f0 100644 --- a/README.md +++ b/README.md @@ -573,8 +573,8 @@ A curated list of awesome Java frameworks, libraries and software. * [JUnit](http://junit.org/) - Common testing framework. * [JUnitParams](https://pragmatists.github.io/JUnitParams/) - Creation of readable and maintainable parametrised tests. * [Mockito](https://github.com/mockito/mockito) - Creation of test double objects in automated unit tests for the purpose of TDD or BDD. -* [PIT](http://pitest.org) - Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test-suites. * [Moco](https://github.com/dreamhead/moco) - Concise web services for stubs and mocks, Duke's Choice Award 2013. +* [PIT](http://pitest.org) - Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test-suites. * [PowerMock](https://github.com/jayway/powermock) - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. * [Selenide](http://selenide.org/) - Concise API around Selenium to write stable and readable UI tests. From d6a5e75427832b04313f63cce97ce6b5e0d4f791 Mon Sep 17 00:00:00 2001 From: Vijay Krishna Palepu Date: Wed, 25 Nov 2015 16:09:40 -0800 Subject: [PATCH 26/68] Code Coverage Section --- README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index 6b51da1..b8a6f99 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ A curated list of awesome Java frameworks, libraries and software. - [Bytecode Manipulation](#bytecode-manipulation) - [Cluster Management](#cluster-management) - [Code Analysis](#code-analysis) + - [Code Coverage](#code-coverage) - [Compiler-compiler](#compiler-compiler) - [Configuration](#configuration) - [Constraint Satisfaction Problem Solver](#constraint-satisfaction-problem-solver) @@ -117,6 +118,15 @@ A curated list of awesome Java frameworks, libraries and software. * [PMD](https://github.com/pmd/pmd) - Source code analysis for finding bad coding practices. * [SonarQube](http://www.sonarqube.org/) - Integrates other analysis components via plugins and provides an overview of the metrics over time. +## Code Coverage + +*Frameworks and tools that enable collection of code coverage metrics for test suites.* + +* [JaCoCo](http://eclemma.org/jacoco/) - Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation; prominently used by EclEmma, the Eclipse code-coverage plugin. +* [Clover](https://www.atlassian.com/software/clover/overview) - Proprietary code coverage tool by Atlassian that relies on source-code instrumentation, instead of bytecode instrumentation. +* [Cobertura](http://cobertura.github.io/cobertura) - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed. +* [JCov](https://wiki.openjdk.java.net/display/CodeTools/jcov) - Code coverage tool used in the OpenJDK project's development toolchain. + ## Compiler-compiler *Frameworks that help to create parsers, interpreters or compilers.* From cfff511350fe0a5770ed20b44fca268291fb6476 Mon Sep 17 00:00:00 2001 From: Andrea Cisternino Date: Fri, 27 Nov 2015 19:21:45 +0100 Subject: [PATCH 27/68] Added Super CSV Super CSV is a powerful CSV parser with support for Dozer, Joda-Time and Java 8. In the words of the author: "The main motivation for Super CSV is to be the foremost, fastest, and most programmer-friendly, free CSV package for Java." --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 75ba2f0..afd667a 100644 --- a/README.md +++ b/README.md @@ -158,6 +158,7 @@ A curated list of awesome Java frameworks, libraries and software. *Frameworks and libraries that simplify reading/writing CSV data.* * [opencsv](http://opencsv.sourceforge.net) - Simple CSV parser with a commercial-friendly license. +* [Super CSV](http://super-csv.github.io/super-csv/) - Powerful CSV parser with support for Dozer, Joda-Time and Java 8. * [uniVocity-parsers](https://github.com/uniVocity/univocity-parsers) - One of the fastest and most feature-complete CSV. Also comes with parsers for TSV and fixed width records. ## Database From e42136800365fd5509289a4899fff71d7ca9d395 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Tue, 1 Dec 2015 19:13:21 +0100 Subject: [PATCH 28/68] Removed Java Code Geeks. The site doesn't provide more information, instead it is bloated with advertisement and modals. --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 6732f42..12e7d9d 100644 --- a/README.md +++ b/README.md @@ -700,7 +700,6 @@ A curated list of awesome Java frameworks, libraries and software. * [Android Arsenal](https://android-arsenal.com) * [Google Java Style](http://google-styleguide.googlecode.com/svn/trunk/javaguide.html) * [InfoQ](http://www.infoq.com/) -* [Java Code Geeks](http://www.javacodegeeks.com/) * [Java, SQL, and jOOQ](http://blog.jooq.org/) * [Java.net](https://home.java.net/) * [Javalobby](https://dzone.com/java-jdk-development-tutorials-tools-news) From fc46a9fc1ab992400670fd4c5b11350100a1f73c Mon Sep 17 00:00:00 2001 From: "milo.simpson" Date: Sun, 6 Dec 2015 13:01:16 -0600 Subject: [PATCH 29/68] Added a new section for JSON Processing, and updated the existing JSON section to clarify it as being more specific to serialization and deserialization. Applying under contributing guideline "(d) a niche product that fills a gap". --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 6732f42..f46ff70 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ A curated list of awesome Java frameworks, libraries and software. - [IDE](#ide) - [Imagery](#imagery) - [JSON](#json) + - [JSON Processing](#json-processing) - [JVM and JDK](#jvm-and-jdk) - [Logging](#logging) - [Machine Learning](#machine-learning) @@ -355,13 +356,21 @@ A curated list of awesome Java frameworks, libraries and software. ## JSON -*Libraries that simplify JSON processing.* +*Libraries for serializing and deserializing JSON to and from Java objects.* * [Genson](http://owlike.github.io/genson/) - Powerful and easy to use Java to JSON conversion library. * [Gson](https://github.com/google/gson) - Serializes objects to JSON and vice versa. Good performance with on-the-fly usage. * [Jackson](http://wiki.fasterxml.com/JacksonHome) - Similar to GSON but has performance gains if you need to instantiate the library more often. * [LoganSquare](https://github.com/bluelinelabs/LoganSquare) - JSON parsing and serializing library based on Jackson's streaming API. Outpeforms GSON & Jackson's library. +## JSON Processing + +*Libraries for processing data in JSON format.* + +* [JsonPath](https://github.com/jayway/JsonPath) - Extract data from JSON using XPATH like syntax. +* [JsonSurfer](https://github.com/jsurfer/JsonSurfer) - Streaming JsonPath processor dedicated to processing big and complicated JSON data. +* [Jolt](https://github.com/bazaarvoice/jolt) - JSON to JSON transformation tool. + ## JVM and JDK *Current implementations of the JVM/JDK.* From 213ba10d38dbc3b985cce328bf42906e61ade71e Mon Sep 17 00:00:00 2001 From: Martin Winandy Date: Mon, 7 Dec 2015 11:13:55 +0100 Subject: [PATCH 30/68] Added tinylog as logging framework --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6732f42..4743e27 100644 --- a/README.md +++ b/README.md @@ -380,6 +380,7 @@ A curated list of awesome Java frameworks, libraries and software. * [logstash](https://www.elastic.co/products/logstash) - Tool for managing log files. * [Metrics](https://github.com/dropwizard/metrics) - Expose metrics via JMX or HTTP and can send them to a database. * [SLF4J](http://www.slf4j.org/) - Abstraction layer which is to be used with an implementation. +* [tinylog](http://www.tinylog.org/) - Lightweight logging framework with static logger class. ## Machine Learning From 2c9ffda4c6f1925aec041ff1112245b19f11f41d Mon Sep 17 00:00:00 2001 From: Chris Engelsma Date: Tue, 8 Dec 2015 09:27:15 -0700 Subject: [PATCH 31/68] Update README.md The almanac-converter library provides conversion between different calendar systems: these include calendars that are both in use (Gregorian, Julian, Islamic) and defunct historical calendars (Maya, French Republican). It's also currently under active development and is still expanding. It is also compatible with the native Java Calendar as well as Joda-Time. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6732f42..72c0afd 100644 --- a/README.md +++ b/README.md @@ -207,6 +207,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries related to handling date and time.* +* [Almanac Converter](https://github.com/hypotemoose/almanac-converter) - Simple conversion between different calendar systems. * [Joda-Time](http://www.joda.org/joda-time/) - De facto standard date/time-library before Java 8. * [ThreeTenBP](https://github.com/ThreeTen/threetenbp) - Port of JSR 310 (java.time package) by the author of Joda-Time. * [Time4J](https://github.com/MenoData/Time4J) - Advanced date and time library. From 572930d90396f07a67454cbb3f0b736be4e11d29 Mon Sep 17 00:00:00 2001 From: "Ted M. Young" Date: Sun, 27 Dec 2015 12:03:44 -0800 Subject: [PATCH 32/68] Added Zulu OpenJDK for 8 and EA 9 The OpenJDK site itself only shows how to download for Linux via package managers, whereas the Zulu site has direct download for all three popular platforms. --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 12e7d9d..a9c1d90 100644 --- a/README.md +++ b/README.md @@ -174,7 +174,7 @@ A curated list of awesome Java frameworks, libraries and software. *Everything which simplifies interactions with the database.* -* [Apache Hive] (https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. +* [Apache Hive](https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. * [Apache Phoenix](http://phoenix.apache.org/) - High performance relational database layer over HBase for low latency applications. * [Crate](https://crate.io/) - Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. * [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. @@ -367,7 +367,9 @@ A curated list of awesome Java frameworks, libraries and software. *Current implementations of the JVM/JDK.* * [JDK 9](https://jdk9.java.net/) - Early access releases of JDK 9. -* [OpenJDK](http://openjdk.java.net/) - Open-source implementation. +* [OpenJDK](http://openjdk.java.net/) - Open-source implementation for Linux. +* [Zulu OpenJDK](http://www.azul.com/downloads/zulu/) - OpenJDK builds for Windows, Linux, and Mac OS X through Java 8. +* [Zulu OpenJDK 9](http://zulu.org/zulu-9-pre-release-downloads/) - Early access OpenJDK 9 builds for Windows, Linux, and Mac OS X. ## Logging From 72039952aa63f6ab1d57fb60da70f25373354671 Mon Sep 17 00:00:00 2001 From: "Ted M. Young" Date: Sun, 27 Dec 2015 12:06:51 -0800 Subject: [PATCH 33/68] Updated Arun Gupta's current gig He now works at Couchbase. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 12e7d9d..658b5a2 100644 --- a/README.md +++ b/README.md @@ -667,7 +667,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Adam Bien](https://twitter.com/AdamBien/) - Freelancer: Author, JavaONE Rockstar Speaker, Consultant, Java Champion. * [Aleksey Shipilëv](https://twitter.com/shipilev) - Performance Geek, Benchmarking Tzar, Concurrency Bug Hunter. * [Antonio Goncalves](https://twitter.com/agoncal/) - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author. -* [Arun Gupta](https://twitter.com/arungupta/) - Java Champion, JavaOne Rockstar, UG Leader, Devoxx4Kids-er, Red Hatter. +* [Arun Gupta](https://twitter.com/arungupta/) - Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase. * [Brian Goetz](https://twitter.com/BrianGoetz) - Java Language Architect at Oracle. * [Bruno Borges](https://twitter.com/brunoborges) - Product Manager/Java Jock at Oracle. * [Ed Burns](https://twitter.com/edburns) - Consulting Member of the Technical Staff at Oracle. From ce01879bcd8b90eea755e1c6ec5a4f3421d0bcae Mon Sep 17 00:00:00 2001 From: "Ted M. Young" Date: Sun, 27 Dec 2015 12:30:41 -0800 Subject: [PATCH 34/68] Created new section for command-line parsers There were a couple of command-line argument parsers missing, and "Utility" already had two, so moved them to their own section. --- README.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 12e7d9d..e2884c8 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,15 @@ A curated list of awesome Java frameworks, libraries and software. * [Cobertura](http://cobertura.github.io/cobertura) - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed. * [JCov](https://wiki.openjdk.java.net/display/CodeTools/jcov) - Code coverage tool used in the OpenJDK project's development toolchain. +## Command-line Argument Parsers + +*Libraries that make it easy to parse command line options, arguments, etc.* + +* [args4j](http://args4j.kohsuke.org/) - Small library to parse command like arguments similar to javac. +* [JewelCLI](http://jewelcli.lexicalscope.com/) - Uses annotations to automatically parse and inject the values with regex validation and Enum support. +* [JCommander](http://jcommander.org/) - Command line arguments parsing framework with custom types and validation via implementing interfaces. +* [JOpt Simple](http://pholser.github.io/jopt-simple/) - Simple parser that uses the POSIX getopt() and GNU getopt_long() syntaxes. Does not use annotations, uses a fluent API instead. + ## Compiler-compiler *Frameworks that help to create parsers, interpreters or compilers.* @@ -600,13 +609,11 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries which provide general utility functions.* * [Apache Commons](http://commons.apache.org/) - Provides different general purpose functions like configuration, validation, collections, file upload or XML processing. -* [args4j](http://args4j.kohsuke.org/) - Command line arguments parser. -* [CRaSH](http://www.crashub.org) - Provides a CLI for running processes. +* [CRaSH](http://www.crashub.org) - Provides a shell into a JVM that's running CRaSH. Used by Spring Boot and others. * [Gephi](https://github.com/gephi/gephi/) - Cross-platform for visualizing and manipulating large graph networks. * [Guava](https://github.com/google/guava) - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth. * [JADE](http://jade.tilab.com/) - Framework and environment for building and to debugging multi-agent systems. * [javatuples](http://www.javatuples.org/) - Tuples. -* [JCommander](http://jcommander.org/) - Command line arguments parser. * [Protégé](http://protege.stanford.edu/) - Provides an ontology editor and a framework to build knowledge-based systems. ## Web Crawling From df83bc82ee8e5bbfaed390d15b32b6d64fff0eb7 Mon Sep 17 00:00:00 2001 From: smalchev Date: Thu, 31 Dec 2015 13:20:42 +1100 Subject: [PATCH 35/68] Adding Vibur DBCP to the Database section. See also issue #293. I'm the author of Vibur --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 12e7d9d..4702286 100644 --- a/README.md +++ b/README.md @@ -189,6 +189,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Presto](https://github.com/facebook/presto) - Distributed SQL query engine for big data. * [Querydsl](http://www.querydsl.com/) - Typesafe unified queries. * [Redisson](https://github.com/mrniko/redisson) - Allows for distributed and scalable data structures on top of a Redis server. +* [Vibur DBCP](http://www.vibur.org/) - JDBC connection pool library which offers advanced performance monitoring capabilities. ## Data structures From 9700d7cbe0b6a805bbd0d7c7955ef7e602e62ce9 Mon Sep 17 00:00:00 2001 From: "Ted M. Young" Date: Thu, 31 Dec 2015 12:01:11 -0800 Subject: [PATCH 36/68] Added command-line section to TOC. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e2884c8..642515b 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ A curated list of awesome Java frameworks, libraries and software. - [Cluster Management](#cluster-management) - [Code Analysis](#code-analysis) - [Code Coverage](#code-coverage) + - [Command-line Argument Parsers](#command-line-argument-parsers) - [Compiler-compiler](#compiler-compiler) - [Configuration](#configuration) - [Constraint Satisfaction Problem Solver](#constraint-satisfaction-problem-solver) From e651b67c562ec5fc03c71f0b38750643f5062e2b Mon Sep 17 00:00:00 2001 From: "Ted M. Young" Date: Thu, 31 Dec 2015 13:13:17 -0800 Subject: [PATCH 37/68] Added Comsat library under Networking. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 01a992b..3de76d3 100644 --- a/README.md +++ b/README.md @@ -458,6 +458,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries for network programming.* * [Async Http Client](https://github.com/AsyncHttpClient/async-http-client) - Asynchronous HTTP and WebSocket client library. +* [Comsat](https://github.com/puniverse/comsat) - Integrates standard Java web-related APIs with Quasar fibers and actors. * [Grizzly](https://grizzly.java.net/) - NIO framework. Used as a network layer in Glassfish. * [Netty](http://netty.io/) - Framework for building high performance network applications. * [OkHttp](http://square.github.io/okhttp/) - HTTP+SPDY client. From b449d0559ba63ac625f16198ac2eb54f4ad10084 Mon Sep 17 00:00:00 2001 From: Alessandro Leite Date: Thu, 7 Jan 2016 23:58:45 +0100 Subject: [PATCH 38/68] Include a reference for the project Oryx 2 Oryx 2 is a framework for building real-time large scale machine learning applications, which also includes end-to-end applications for collaborative filtering, classification, regression, and clustering. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3de76d3..2c78728 100644 --- a/README.md +++ b/README.md @@ -399,6 +399,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. * [H2O](http://h2o.ai/) - Analytics engine for statistics over big data. * [JSAT](https://github.com/EdwardRaff/JSAT) - Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. +* [Oryx 2](https://github.com/OryxProject/oryx) - A framework for building real-time large scale machine learning applications, which also includes end-to-end applications for collaborative filtering, classification, regression, and clustering. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. ## Messaging From cb2182f98bfecba619ab42a3732b466436dd7921 Mon Sep 17 00:00:00 2001 From: Mohamed Amine Aboura Date: Fri, 8 Jan 2016 22:28:27 +0300 Subject: [PATCH 39/68] Added JavaVerbalExpressions to Utility --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3de76d3..9bc7cb2 100644 --- a/README.md +++ b/README.md @@ -615,6 +615,7 @@ A curated list of awesome Java frameworks, libraries and software. * [javatuples](http://www.javatuples.org/) - Tuples. * [JCommander](http://jcommander.org/) - Command line arguments parser. * [Protégé](http://protege.stanford.edu/) - Provides an ontology editor and a framework to build knowledge-based systems. +* [JavaVerbalExpressions](https://github.com/VerbalExpressions/JavaVerbalExpressions) - a library that helps to construct difficult regular expressions ## Web Crawling From d2c660333d878ba25e2aa312ff2cb42d07a17ef1 Mon Sep 17 00:00:00 2001 From: Alessandro Leite Date: Sat, 9 Jan 2016 16:22:46 +0100 Subject: [PATCH 40/68] Include the eXist project eXist is a NoSQL document database and application platform. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2c78728..4bfb8b7 100644 --- a/README.md +++ b/README.md @@ -178,6 +178,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Hive](https://hive.apache.org/) - Data warehouse infrastructure built on top of Hadoop. * [Apache Phoenix](http://phoenix.apache.org/) - High performance relational database layer over HBase for low latency applications. * [Crate](https://crate.io/) - Distributed data store that implements data synchronization, sharding, scaling, and replication. In addition, it provides a SQL-based syntax to execute queries across a cluster. +* [eXist](https://github.com/eXist-db/exist) - A NoSQL document database and application platform. * [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Brings metrics and failover strategies to the most common connection pooling solutions. * [Flyway](http://flywaydb.org/) - Simple database migration tool. * [H2](http://h2database.com/) - Small SQL Database notable for its in-memory functionality. From b92a969ffc46d8e88ae0a943cc353e283df17408 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 20:43:32 +0100 Subject: [PATCH 41/68] Added Rapidoid --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 81294e9..a899bf3 100644 --- a/README.md +++ b/README.md @@ -523,6 +523,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Dropwizard](https://dropwizard.github.io/dropwizard/) - Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics. * [Feign](https://github.com/Netflix/feign) - HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket. * [Jersey](https://jersey.java.net/) - JAX-RS reference implementation. +* [Rapidoid](http://www.rapidoid.org/) - A Simple, secure and extremely fast framework consisting of embedded HTTP server, GUI components and dependency injection. * [RESTEasy](http://resteasy.jboss.org/) - Fully certified and portable implementation of the JAX-RS specification. * [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBOSS Netty HTTP stack to provide scaling and performance. * [RestX](http://restx.io) - Framework based on annotation processing and compile-time source generation. From db0ffe5df7f56b3cee6070cd13525b8bae2d323b Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 20:51:13 +0100 Subject: [PATCH 42/68] Fixed spelling --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a899bf3..36b74a9 100644 --- a/README.md +++ b/README.md @@ -525,7 +525,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Jersey](https://jersey.java.net/) - JAX-RS reference implementation. * [Rapidoid](http://www.rapidoid.org/) - A Simple, secure and extremely fast framework consisting of embedded HTTP server, GUI components and dependency injection. * [RESTEasy](http://resteasy.jboss.org/) - Fully certified and portable implementation of the JAX-RS specification. -* [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBOSS Netty HTTP stack to provide scaling and performance. +* [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBoss Netty HTTP stack to provide scaling and performance. * [RestX](http://restx.io) - Framework based on annotation processing and compile-time source generation. * [Retrofit](http://square.github.io/retrofit/) - Type-safe REST client. * [Spark](http://sparkjava.com/) - Sinatra inspired framework. From c7e2aa7a4c0c063d9a0c26351d663dfed3c5f4f3 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 20:51:21 +0100 Subject: [PATCH 43/68] Added Restlet --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 36b74a9..6f821a4 100644 --- a/README.md +++ b/README.md @@ -526,6 +526,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Rapidoid](http://www.rapidoid.org/) - A Simple, secure and extremely fast framework consisting of embedded HTTP server, GUI components and dependency injection. * [RESTEasy](http://resteasy.jboss.org/) - Fully certified and portable implementation of the JAX-RS specification. * [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBoss Netty HTTP stack to provide scaling and performance. +* [Restlet Framework](https://github.com/restlet/restlet-framework-java/) - Pioneering framework with powerful routing and filtering capabilities, unified client and server API. * [RestX](http://restx.io) - Framework based on annotation processing and compile-time source generation. * [Retrofit](http://square.github.io/retrofit/) - Type-safe REST client. * [Spark](http://sparkjava.com/) - Sinatra inspired framework. From b1bc73964e8cfa3fc4d8975f47ce85cbc72b7a2b Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 20:55:27 +0100 Subject: [PATCH 44/68] Added rest.li --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6f821a4..4d8fd66 100644 --- a/README.md +++ b/README.md @@ -527,6 +527,7 @@ A curated list of awesome Java frameworks, libraries and software. * [RESTEasy](http://resteasy.jboss.org/) - Fully certified and portable implementation of the JAX-RS specification. * [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBoss Netty HTTP stack to provide scaling and performance. * [Restlet Framework](https://github.com/restlet/restlet-framework-java/) - Pioneering framework with powerful routing and filtering capabilities, unified client and server API. +* [rest.li](https://github.com/linkedin/rest.li) - Framework for building robust, scalable RESTful architectures using type-safe bindings and asynchronous, non-blocking IO with an end-to-end developer workflow that promotes clean practices, uniform interface design and consistent data modeling. * [RestX](http://restx.io) - Framework based on annotation processing and compile-time source generation. * [Retrofit](http://square.github.io/retrofit/) - Type-safe REST client. * [Spark](http://sparkjava.com/) - Sinatra inspired framework. From ba32cd5f092d64cebdd174e2930a0c07f4e50199 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 20:58:30 +0100 Subject: [PATCH 45/68] Added Codacy --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 4d8fd66..297e780 100644 --- a/README.md +++ b/README.md @@ -112,6 +112,8 @@ A curated list of awesome Java frameworks, libraries and software. ## Code Analysis *Tools that provide metrics and quality measurements.* + +* [Codacy](https://www.codacy.com) - Continuous static analysis, code coverage, and software metrics to automate code reviews. * [Checkstyle](https://github.com/checkstyle/checkstyle) - Static analysis of coding conventions and standards. * [Error Prone](https://github.com/google/error-prone) - Catches common programming mistakes as compile-time errors. * [FindBugs](http://findbugs.sourceforge.net/) - Static analysis of bytecode to find potential bugs. From 41340e507f362ae7d1f67de66fd01cca5ee23442 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 21:03:43 +0100 Subject: [PATCH 46/68] Added Blade --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 738890f..9b1930b 100644 --- a/README.md +++ b/README.md @@ -655,6 +655,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Tapestry](http://tapestry.apache.org/) - Component-oriented framework for creating dynamic, robust, highly scalable web applications. * [Apache Wicket](http://wicket.apache.org/) - Component-based web application framework similar to Tapestry with a stateful GUI. +* [Blade](https://github.com/biezhi/blade) - Lightweight, modular framework which aims to be elegant and simple. * [Google Web Toolkit](http://www.gwtproject.org/) - Toolbox which includes a Java-to-JavaScript compiler for client-side code, XML parser, API for RPC, JUnit integration, internationalization support and widgets for the GUI. * [Grails](https://grails.org/) - Groovy framework with the aim to provide a highly productive environment by favoring convention over configuration, no XML and support for mixins. * [Ninja](http://www.ninjaframework.org/) - Full stack web framework. From eb09a1c90914cbbf9085218ea4e523c146d6cbff Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 21:07:34 +0100 Subject: [PATCH 47/68] Added fastjson --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9b1930b..84e9954 100644 --- a/README.md +++ b/README.md @@ -383,6 +383,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries for processing data in JSON format.* +* [fastjson](https://github.com/alibaba/fastjson) - Very fast processor with no additional dependencies and full data binding. * [JsonPath](https://github.com/jayway/JsonPath) - Extract data from JSON using XPATH like syntax. * [JsonSurfer](https://github.com/jsurfer/JsonSurfer) - Streaming JsonPath processor dedicated to processing big and complicated JSON data. * [Jolt](https://github.com/bazaarvoice/jolt) - JSON to JSON transformation tool. From d85a8b28fdb8e06173b51a4d5f7939f77fa981ab Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 21:10:41 +0100 Subject: [PATCH 48/68] Added Nifty --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 84e9954..43ffa43 100644 --- a/README.md +++ b/README.md @@ -485,6 +485,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Comsat](https://github.com/puniverse/comsat) - Integrates standard Java web-related APIs with Quasar fibers and actors. * [Grizzly](https://grizzly.java.net/) - NIO framework. Used as a network layer in Glassfish. * [Netty](http://netty.io/) - Framework for building high performance network applications. +* [Nifty](https://github.com/facebook/nifty) - Implementation of Thrift clients and servers on Netty. * [OkHttp](http://square.github.io/okhttp/) - HTTP+SPDY client. * [Undertow](http://undertow.io/) - Web server providing both blocking and non-blocking API’s based on NIO. Used as a network layer in WildFly. From 6c4d6ddc15089ad51a0536e793d551cb45880cb6 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 21:13:36 +0100 Subject: [PATCH 49/68] Added Finnagle --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 43ffa43..05c4418 100644 --- a/README.md +++ b/README.md @@ -482,6 +482,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries for network programming.* * [Async Http Client](https://github.com/AsyncHttpClient/async-http-client) - Asynchronous HTTP and WebSocket client library. +* [Finagle](https://github.com/twitter/finagle) - Extensible RPC system used to construct high-concurrency servers. It implements uniform client and server APIs for several protocols, and is protocol agnostic, which simplifies the implementation of new protocols. * [Comsat](https://github.com/puniverse/comsat) - Integrates standard Java web-related APIs with Quasar fibers and actors. * [Grizzly](https://grizzly.java.net/) - NIO framework. Used as a network layer in Glassfish. * [Netty](http://netty.io/) - Framework for building high performance network applications. From 2d18f7dfd5033056b436170ccc6cba7708befe3b Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 13 Jan 2016 21:20:41 +0100 Subject: [PATCH 50/68] Added Travis integration --- .travis.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..310fd20 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,7 @@ +language: ruby +rvm: + - 2.2 +before_script: + - gem install awesome_bot +script: + - awesome_bot README.md From 6f4d2cfa732de443492b0b473f6e938af2967458 Mon Sep 17 00:00:00 2001 From: ReadmeCritic Date: Wed, 13 Jan 2016 13:33:54 -0800 Subject: [PATCH 51/68] Update README URLs based on HTTP redirects --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 05c4418..4a74fd7 100644 --- a/README.md +++ b/README.md @@ -287,7 +287,7 @@ A curated list of awesome Java frameworks, libraries and software. * [IzPack](http://izpack.org/) - Setup authoring tool for cross-platform deployments. * [JitPack](https://jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. * [Launch4j](http://launch4j.sourceforge.net/) - Wraps JARs in lightweight and native Windows executables. -* [Nexus](http://www.sonatype.com/nexus) - Binary management with proxy and caching capabilities. +* [Nexus](http://www.sonatype.com/nexus/solution-overview) - Binary management with proxy and caching capabilities. * [packr](https://github.com/libgdx/packr/) - Packs JARs, assets and the JVM for native distribution on Windows, Linux and Mac OS X. ## Document Processing @@ -305,7 +305,7 @@ A curated list of awesome Java frameworks, libraries and software. * [CATG](https://github.com/ksen007/janala2) - Concolic unit testing engine. Automatically generates unit tests using formal methods. * [Checker Framework](http://types.cs.washington.edu/checker-framework/) - Pluggable type systems. Includes nullness types, physical units, immutability types and more. * [Daikon](http://plse.cs.washington.edu/daikon/) - Daikon detects likely program invariants and can generate JML specs based on those invariats. -* [Java Modeling Language (JML)](http://www.jmlspecs.org) - Behavioral interface specification language that can be used to specify the behavior of code modules. It combines the design by contract approach of Eiffel and the model-based specification approach of the Larch family of interface specification languages, with some elements of the refinement calculus. Used by several other verification tools. +* [Java Modeling Language (JML)](http://www.eecs.ucf.edu/~leavens/JML/) - Behavioral interface specification language that can be used to specify the behavior of code modules. It combines the design by contract approach of Eiffel and the model-based specification approach of the Larch family of interface specification languages, with some elements of the refinement calculus. Used by several other verification tools. * [Java Path Finder (JPF)](http://babelfish.arc.nasa.gov/trac/jpf) - JVM formal verification tool containing a model checker and more. Created by NASA. * [jCUTE](https://github.com/osl/jcute) - Concolic unit testing engine that automatically generates unit tests. Concolic execution combines randomized concrete execution with symbolic execution and automatic constraint solving. * [JMLOK 2.0](http://massoni.computacao.ufcg.edu.br/home/jmlok) - Detects nonconformances between code and JML specification through the feedback-directed random tests generation, and suggests a likely cause for each nonconformance detected. @@ -329,7 +329,7 @@ A curated list of awesome Java frameworks, libraries and software. * [jMonkeyEngine](http://jmonkeyengine.org/) - Game engine for modern 3D development. * [libGDX](https://libgdx.badlogicgames.com/) - All-round cross-platform, high-level framework. -* [LWJGL](http://www.lwjgl.org/) - Robust framework that abstracts libraries like OpenGL/CL/AL. +* [LWJGL](https://www.lwjgl.org/) - Robust framework that abstracts libraries like OpenGL/CL/AL. ## GUI @@ -420,7 +420,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Apache Spark](http://spark.apache.org/) - Data analytics cluster computing framework. * [DeepDive](http://deepdive.stanford.edu) - Creates structured information from unstructured data and integrates it into an existing database. * [Deeplearning4j](http://deeplearning4j.org/) - Distributed and multi-threaded deep learning library. -* [H2O](http://h2o.ai/) - Analytics engine for statistics over big data. +* [H2O](http://www.h2o.ai/) - Analytics engine for statistics over big data. * [JSAT](https://github.com/EdwardRaff/JSAT) - Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution. * [Oryx 2](https://github.com/OryxProject/oryx) - A framework for building real-time large scale machine learning applications, which also includes end-to-end applications for collaborative filtering, classification, regression, and clustering. * [Weka](http://www.cs.waikato.ac.nz/ml/weka/) - Collection of algorithms for data mining tasks ranging from pre-processing to visualization. @@ -454,7 +454,7 @@ A curated list of awesome Java frameworks, libraries and software. *Tools that monitor applications in production.* -* [AppDynamics](http://www.appdynamics.com/) - Commercial performance monitor. +* [AppDynamics](https://www.appdynamics.com/) - Commercial performance monitor. * [JavaMelody](https://github.com/javamelody/javamelody) - Performance monitoring and profiling. * [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. * [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. @@ -497,7 +497,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Ebean](http://ebean-orm.github.io/) - Provides simple and fast data access. * [EclipseLink](https://www.eclipse.org/eclipselink/) - Supports a number of persistence standards: JPA, JAXB, JCA and SDO. * [Hibernate](http://hibernate.org/orm/) - Robust and widely used with an active community. -* [MyBatis](http://mybatis.org/mybatis-3/) - Couples objects with stored procedures or SQL statements. +* [MyBatis](http://www.mybatis.org/mybatis-3/) - Couples objects with stored procedures or SQL statements. * [OrmLite](http://ormlite.com/) - Lightweight package avoiding the complexity and overhead of other ORM products. ## PDF @@ -625,7 +625,7 @@ A curated list of awesome Java frameworks, libraries and software. * [REST Assured](https://github.com/jayway/rest-assured) - Java DSL for easy testing for REST/HTTP services. * [Selenide](http://selenide.org/) - Concise API around Selenium to write stable and readable UI tests. * [Selenium](http://docs.seleniumhq.org/) - Portable software testing framework for web applications. -* [Spock](http://docs.spockframework.org/) - JUnit-compatible framework featuring an expressive Groovy-derived specification language. +* [Spock](http://spockframework.github.io/spock/docs/) - JUnit-compatible framework featuring an expressive Groovy-derived specification language. * [TestNG](http://testng.org/) - Testing framework. * [Truth](https://github.com/google/truth) - Google's assertion and proposition framework. * [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. @@ -665,10 +665,10 @@ A curated list of awesome Java frameworks, libraries and software. * [Pippo](http://www.pippo.ro/) - Small, highly modularized Sinatra-like framework. * [Play](https://www.playframework.com/) - Uses convention over configuration, hot code reloading and display of errors in the browser. * [PrimeFaces](http://primefaces.org/) - JSF framework which has a free and a commercial version with support. Provides several frontend components. -* [Ratpack](http://ratpack.io/) - Set of libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. +* [Ratpack](https://ratpack.io/) - Set of libraries that facilitate fast, efficient, evolvable and well tested HTTP applications. * [Spring Boot](http://projects.spring.io/spring-boot/) - Microframework which simplifies the development of new Spring applications. * [Spring](http://projects.spring.io/spring-framework/) - Provides many packages ranging from dependency injection to aspect-oriented programming to security. -* [Vaadin](https://vaadin.com/) - Event-driven framework build on top of GWT. Uses server-side architecture with Ajax on the client-side. +* [Vaadin](https://vaadin.com/home) - Event-driven framework build on top of GWT. Uses server-side architecture with Ajax on the client-side. # Resources @@ -737,7 +737,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Google Java Style](http://google-styleguide.googlecode.com/svn/trunk/javaguide.html) * [InfoQ](http://www.infoq.com/) * [Java, SQL, and jOOQ](http://blog.jooq.org/) -* [Java.net](https://home.java.net/) +* [Java.net](https://community.oracle.com/community/java) * [Javalobby](https://dzone.com/java-jdk-development-tutorials-tools-news) * [JavaWorld](http://www.javaworld.com/) * [JAXenter](https://jaxenter.com/) From 825679a5ab0ad22bd7ffbad57dfc13eaf0a88c49 Mon Sep 17 00:00:00 2001 From: ReadmeCritic Date: Wed, 13 Jan 2016 14:06:37 -0800 Subject: [PATCH 52/68] Update redirect for Cobertura --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4a74fd7..f26020e 100644 --- a/README.md +++ b/README.md @@ -128,7 +128,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JaCoCo](http://eclemma.org/jacoco/) - Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation; prominently used by EclEmma, the Eclipse code-coverage plugin. * [Clover](https://www.atlassian.com/software/clover/overview) - Proprietary code coverage tool by Atlassian that relies on source-code instrumentation, instead of bytecode instrumentation. -* [Cobertura](http://cobertura.github.io/cobertura) - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed. +* [Cobertura](http://cobertura.github.io/cobertura/) - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed. * [JCov](https://wiki.openjdk.java.net/display/CodeTools/jcov) - Code coverage tool used in the OpenJDK project's development toolchain. ## Command-line Argument Parsers From 0a7aa4c7f792f5f756c84cffe86b356097b727cc Mon Sep 17 00:00:00 2001 From: ReadmeCritic Date: Sat, 16 Jan 2016 07:02:27 -0800 Subject: [PATCH 53/68] [travis] white list citrusframework.org --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 310fd20..11ff6a9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,4 +4,4 @@ rvm: before_script: - gem install awesome_bot script: - - awesome_bot README.md + - awesome_bot README.md --white-list citrusframework.org From 769fd3c8f2b0235c55945dfa827c4e6e66c935d4 Mon Sep 17 00:00:00 2001 From: ReadmeCritic Date: Sat, 16 Jan 2016 07:09:27 -0800 Subject: [PATCH 54/68] [travis] white list wiki.openjdk.java.net --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 11ff6a9..4ef39d4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,4 +4,4 @@ rvm: before_script: - gem install awesome_bot script: - - awesome_bot README.md --white-list citrusframework.org + - awesome_bot README.md --white-list citrusframework.org,wiki.openjdk.java.net From a48910a49d802f11d8db874f540206178062e6eb Mon Sep 17 00:00:00 2001 From: pron Date: Mon, 18 Jan 2016 14:54:07 +0200 Subject: [PATCH 55/68] Add Jolokia --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6680e74..76d2f97 100644 --- a/README.md +++ b/README.md @@ -419,6 +419,7 @@ A curated list of awesome Java frameworks, libraries and software. * [AppDynamics](http://www.appdynamics.com/) - Commercial performance monitor. * [JavaMelody](https://github.com/javamelody/javamelody) - Performance monitoring and profiling. * [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. +* [Jolokia](https://jolokia.org/) - JMX over REST. * [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. * [New Relic](http://newrelic.com/) - Commercial performance monitor. * [SPM](http://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. From febd1714bb82c3c52e9a7ecdf371a59fbf3066de Mon Sep 17 00:00:00 2001 From: pron Date: Mon, 18 Jan 2016 14:56:31 +0200 Subject: [PATCH 56/68] Move metrics from Logging to Monitoring --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6680e74..f9e9a4f 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,6 @@ A curated list of awesome Java frameworks, libraries and software. * [kibana](http://www.elasticsearch.org/overview/kibana/) - Analyzes and visualizes log files. * [Logback](http://logback.qos.ch/) - Robust logging library with interesting configuration options via Groovy. * [logstash](http://logstash.net/) - Tool for managing log files. -* [Metrics](http://metrics.codahale.com/) - Expose metrics via JMX or HTTP and can send them to a database. * [SLF4J](http://www.slf4j.org/) - Abstraction layer which is to be used with an implementation. ## Machine Learning @@ -420,6 +419,7 @@ A curated list of awesome Java frameworks, libraries and software. * [JavaMelody](https://github.com/javamelody/javamelody) - Performance monitoring and profiling. * [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. * [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. +* [Metrics](http://metrics.codahale.com/) - Expose metrics via JMX or HTTP and can send them to a database. * [New Relic](http://newrelic.com/) - Commercial performance monitor. * [SPM](http://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. * [Takipi](https://www.takipi.com/) - Commercial in-production error monitoring and debugging. From c7e0dbf20d31eceb6ae9880639034e706e119a5e Mon Sep 17 00:00:00 2001 From: pron Date: Mon, 18 Jan 2016 14:59:22 +0200 Subject: [PATCH 57/68] Move Vert.x to Reactive libraries --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6680e74..c295a45 100644 --- a/README.md +++ b/README.md @@ -221,7 +221,6 @@ A curated list of awesome Java frameworks, libraries and software. * [JRebel](http://zeroturnaround.com/software/jrebel/) - Commercial software that instantly reloads code and configuration changes without redeploys. * [Lombok](http://projectlombok.org/) - Code-generator which aims to reduce the verbosity. * [Spring Loaded](https://github.com/spring-projects/spring-loaded) - Class reloading agent. -* [vert.x](http://vertx.io/) - Polyglot event-driven application framework. ## Distributed Applications @@ -488,6 +487,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - Provide a standard for asynchronous stream processing with non-blocking backpressure. * [Reactor](http://projectreactor.io/) - Library for building reactive fast-data applications. * [RxJava](https://github.com/Netflix/RxJava) - Library for composing asynchronous and event-based programs using observable sequences from the JVM. +* [vert.x](http://vertx.io/) - Polyglot event-driven application framework. ## REST Frameworks From 5a58ddcd10845f50f6760bd22ef954adb3eaf448 Mon Sep 17 00:00:00 2001 From: pron Date: Mon, 18 Jan 2016 15:07:40 +0200 Subject: [PATCH 58/68] Add honest-profiler --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6680e74..d44df29 100644 --- a/README.md +++ b/README.md @@ -474,6 +474,7 @@ A curated list of awesome Java frameworks, libraries and software. *Tools for performance analysis, profiling and benchmarking.* +* [honest-profiler](https://github.com/RichardWarburton/honest-profiler) - An low-overhead, bias-free sampling profiler. * [jHiccup](http://github.com/giltene/jHiccup) - Logs and records platform JVM stalls. * [JMH](http://openjdk.java.net/projects/code-tools/jmh/) - Microbenchmarking tool for the JVM. * [JProfiler](https://www.ej-technologies.com/products/jprofiler/overview.html) - Commercial profiler. From fdf59139a35c17f49820108113badb6c58730bf7 Mon Sep 17 00:00:00 2001 From: koncz314 Date: Thu, 21 Jan 2016 12:50:20 +0100 Subject: [PATCH 59/68] Fixed Scene Builder link to gluonhq --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f26020e..fb001f5 100644 --- a/README.md +++ b/README.md @@ -336,7 +336,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries to create modern graphical user interfaces.* * [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - The successor of Swing. -* [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - Visual layout tool for JavaFX applications. +* [Scene Builder](http://gluonhq.com/open-source/scene-builder) - Visual layout tool for JavaFX applications. * [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. ## High Performance From 31ef73f8b7aeb0400b81561a08ec400da6762522 Mon Sep 17 00:00:00 2001 From: koncz314 Date: Thu, 21 Jan 2016 13:02:42 +0100 Subject: [PATCH 60/68] Fixed Scene Builder link to gluonhq --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fb001f5..a38b14e 100644 --- a/README.md +++ b/README.md @@ -336,7 +336,7 @@ A curated list of awesome Java frameworks, libraries and software. *Libraries to create modern graphical user interfaces.* * [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - The successor of Swing. -* [Scene Builder](http://gluonhq.com/open-source/scene-builder) - Visual layout tool for JavaFX applications. +* [Scene Builder](http://gluonhq.com/open-source/scene-builder/) - Visual layout tool for JavaFX applications. * [SWT](http://www.eclipse.org/swt/) - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. ## High Performance From 9f6366ff609311ef95e1648da58ca90124a0216f Mon Sep 17 00:00:00 2001 From: codenameone Date: Wed, 27 Jan 2016 15:12:17 +0200 Subject: [PATCH 61/68] Flushed out the Java mobile ecosystem Added Avian, Codename One/ParparVM & J2ObjC to the list as they were all missing --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index a38b14e..69d33a6 100644 --- a/README.md +++ b/README.md @@ -442,12 +442,16 @@ A curated list of awesome Java frameworks, libraries and software. *Everything else.* +* [Avian](https://github.com/ReadyTalk/avian) - Open source JVM with both a JIT & AOT modes. Includes an iOS port. +* [Codename One](https://www.codenameone.com/) - Open source cross platform solution for writing native mobile apps in Java for iOS, Android, Windows etc. * [Design Patterns](https://github.com/iluwatar/java-design-patterns) - Implementation and explanation of the most common design patterns. +* [J2ObjC](https://github.com/google/j2objc) - Java to Objective-C translator for porting Android libraries to iOS. * [Jimfs](https://github.com/google/jimfs) - In-memory file system. * [Lanterna](https://code.google.com/p/lanterna/) - Easy console text GUI library similar to curses. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. * [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Popular Java 8 guide. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. +* [ParparVM](https://github.com/codenameone/CodenameOne/tree/master/vm) - The open source VM that underlies [Codename One](https://www.codenameone.com/). * [RoboVM](https://robovm.com/) - Commercial framework with a free trial to write native iOS apps. ## Monitoring From ec78dba28ce9c80ad3f9339c997e72803d34859b Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 27 Jan 2016 20:30:06 +0100 Subject: [PATCH 62/68] Changed Lanterna URL from Google Code to GitHub --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a38b14e..3e6dcd3 100644 --- a/README.md +++ b/README.md @@ -444,7 +444,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Design Patterns](https://github.com/iluwatar/java-design-patterns) - Implementation and explanation of the most common design patterns. * [Jimfs](https://github.com/google/jimfs) - In-memory file system. -* [Lanterna](https://code.google.com/p/lanterna/) - Easy console text GUI library similar to curses. +* [Lanterna](https://github.com/mabe02/lanterna) - Easy console text GUI library similar to curses. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. * [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Popular Java 8 guide. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. From 5c751deb57583f73e2dd9046ef917db3d3753b75 Mon Sep 17 00:00:00 2001 From: codenameone Date: Wed, 27 Jan 2016 21:34:14 +0200 Subject: [PATCH 63/68] Updated changes based on pull reques comments --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 69d33a6..0809f9e 100644 --- a/README.md +++ b/README.md @@ -392,8 +392,10 @@ A curated list of awesome Java frameworks, libraries and software. *Current implementations of the JVM/JDK.* +* [Avian](https://github.com/ReadyTalk/avian) - JVM with both a JIT & AOT modes. Includes an iOS port. * [JDK 9](https://jdk9.java.net/) - Early access releases of JDK 9. * [OpenJDK](http://openjdk.java.net/) - Open-source implementation for Linux. +* [ParparVM](https://github.com/codenameone/CodenameOne/tree/master/vm) - VM with non-blocking concurrent GC for iOS. * [Zulu OpenJDK](http://www.azul.com/downloads/zulu/) - OpenJDK builds for Windows, Linux, and Mac OS X through Java 8. * [Zulu OpenJDK 9](http://zulu.org/zulu-9-pre-release-downloads/) - Early access OpenJDK 9 builds for Windows, Linux, and Mac OS X. @@ -442,8 +444,7 @@ A curated list of awesome Java frameworks, libraries and software. *Everything else.* -* [Avian](https://github.com/ReadyTalk/avian) - Open source JVM with both a JIT & AOT modes. Includes an iOS port. -* [Codename One](https://www.codenameone.com/) - Open source cross platform solution for writing native mobile apps in Java for iOS, Android, Windows etc. +* [Codename One](https://www.codenameone.com/) - Cross platform solution for writing native mobile (iOS, Android, etc.) * [Design Patterns](https://github.com/iluwatar/java-design-patterns) - Implementation and explanation of the most common design patterns. * [J2ObjC](https://github.com/google/j2objc) - Java to Objective-C translator for porting Android libraries to iOS. * [Jimfs](https://github.com/google/jimfs) - In-memory file system. @@ -451,7 +452,6 @@ A curated list of awesome Java frameworks, libraries and software. * [LightAdmin](http://lightadmin.org/) - Pluggable CRUD UI library for rapid application development. * [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Popular Java 8 guide. * [OpenRefine](http://openrefine.org/) - Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases. -* [ParparVM](https://github.com/codenameone/CodenameOne/tree/master/vm) - The open source VM that underlies [Codename One](https://www.codenameone.com/). * [RoboVM](https://robovm.com/) - Commercial framework with a free trial to write native iOS apps. ## Monitoring From beaaf886373bbd47ed3f72562c969874ae87b9ea Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 27 Jan 2016 20:35:57 +0100 Subject: [PATCH 64/68] Added RAML --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3e6dcd3..c18aece 100644 --- a/README.md +++ b/README.md @@ -537,6 +537,7 @@ A curated list of awesome Java frameworks, libraries and software. * [Dropwizard](https://dropwizard.github.io/dropwizard/) - Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics. * [Feign](https://github.com/Netflix/feign) - HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket. * [Jersey](https://jersey.java.net/) - JAX-RS reference implementation. +* [RAML](http://raml.org/) - Modeling language to generate REST APIs with contract first. * [Rapidoid](http://www.rapidoid.org/) - A Simple, secure and extremely fast framework consisting of embedded HTTP server, GUI components and dependency injection. * [RESTEasy](http://resteasy.jboss.org/) - Fully certified and portable implementation of the JAX-RS specification. * [RestExpress](https://github.com/RestExpress/RestExpress) - Thin wrapper on the JBoss Netty HTTP stack to provide scaling and performance. From 94e7f6777b6f41cf691a870bc5e685f39b8ee141 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 27 Jan 2016 21:27:56 +0100 Subject: [PATCH 65/68] Removed several blogs which had under 1000 unique page views --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index 4eaab03..44f8294 100644 --- a/README.md +++ b/README.md @@ -745,12 +745,9 @@ A curated list of awesome Java frameworks, libraries and software. * [JavaWorld](http://www.javaworld.com/) * [JAXenter](https://jaxenter.com/) * [RebelLabs](http://zeroturnaround.com/rebellabs/) -* [The Java Specialist' Newsletter](http://www.javaspecialists.eu/archive/archive.jsp) * [The Takipi Blog](http://blog.takipi.com/) * [TheServerSide.com](http://www.theserverside.com/) -* [Thoughts On Java](http://www.thoughts-on-java.org/) * [Vanilla Java](http://vanillajava.blogspot.ch/) -* [Vlad Mihalcea on Hibernate](http://vladmihalcea.com/) * [Voxxed](https://www.voxxed.com/) # Contributing From f932b46a4fb6cdf72e2749a8b1308dc9422a69ed Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 27 Jan 2016 21:38:06 +0100 Subject: [PATCH 66/68] Removed inactive and low-profile Twitter accounts --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index 44f8294..48b593a 100644 --- a/README.md +++ b/README.md @@ -714,7 +714,6 @@ A curated list of awesome Java frameworks, libraries and software. * [James Weaver](https://twitter.com/JavaFXpert) - Java/JavaFX/IoT developer, author and speaker. * [Java EE](https://twitter.com/Java_EE/) - Official Java EE Twitter account. * [Java Magazine](https://twitter.com/Oraclejavamag) - Official Java Magazine account. -* [Java.net](https://twitter.com/javanetbuzz/) - Official Java.net account. * [Java](https://twitter.com/java/) - Official Java Twitter account. * [Javin Paul](https://twitter.com/javinpaul) - Well-known Java blogger. * [Lukas Eder](https://twitter.com/lukaseder) - Founder and CEO Data Geekery (jOOQ). @@ -726,10 +725,8 @@ A curated list of awesome Java frameworks, libraries and software. * [OpenJDK](https://twitter.com/OpenJDK) - Official OpenJDK account. * [Peter Lawrey](https://twitter.com/PeterLawrey) - Peter Lawrey, Java performance expert. * [Reza Rahman](https://twitter.com/reza_rahman) - Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker. -* [Roberto Cortez](https://twitter.com/radcortez) - Java EE/JPA expert, speaker, open source. * [Simon Maple](https://twitter.com/sjmaple) - Java Champion, virtualJUG founder, LJC leader, RebelLabs author. * [Stephen Colebourne](https://twitter.com/jodastephen) - Java Champion, speaker. -* [Tim Boudreau](https://twitter.com/kablosna) - Author and NetBeans guru. * [Trisha Gee](https://twitter.com/trisha_gee) - Java Champion and speaker. ## Websites From 5d9972368fe59d3bc135b76605a9fdf44550ec21 Mon Sep 17 00:00:00 2001 From: Andreas Kull Date: Wed, 27 Jan 2016 21:38:23 +0100 Subject: [PATCH 67/68] Added gitignore for scripts folder --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5093a29 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +scripts/ From 9d4cc5b701d214ecb967da4436eb0262e144e8f6 Mon Sep 17 00:00:00 2001 From: pron Date: Thu, 28 Jan 2016 06:28:20 +0200 Subject: [PATCH 68/68] Fix metrics link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 94b70e2..ce3cb7a 100644 --- a/README.md +++ b/README.md @@ -457,7 +457,7 @@ A curated list of awesome Java frameworks, libraries and software. * [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. * [Jolokia](https://jolokia.org/) - JMX over REST. * [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. -* [Metrics](http://metrics.codahale.com/) - Expose metrics via JMX or HTTP and can send them to a database. +* [Metrics](http://metrics.dropwizard.io/) - Expose metrics via JMX or HTTP and can send them to a database. * [New Relic](http://newrelic.com/) - Commercial performance monitor. * [SPM](https://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. * [Takipi](https://www.takipi.com/) - Commercial in-production error monitoring and debugging.