• Stars
    star
    2,116
  • Rank 20,954 (Top 0.5 %)
  • Language
  • License
    Apache License 2.0
  • Created almost 9 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A curated list of awesome Vert.x resources, libraries, and other nice things.

Awesome Vert.x Awesome

Awesome Vert.x is a list of awesome frameworks, libraries or other components related to Vert.x.

If you want your component to appear here, send a pull request to this repository to add it.

Please note that we can't vouch for the stability or production-worthiness of everything on this list unless it has the icon (stack) next to it. This icon means the component is part of the official Vert.x stack.

Contents

Books

Build tools

Web Frameworks

  • Vert.x Web (stack) - Full featured web toolkit for Vert.x.
  • Vert.x Jersey - Create JAX-RS Jersey resources in Vert.x.
  • Kovert - Invisible REST framework for Kotlin + Vert.x Web.
  • Handlers - Open web framework for Vert.x.
  • QBit - REST and WebSocket method call marshaling and reactive library.
  • vertx-rest-storage - Persistence for REST resources in the filesystem or a redis database.
  • Jubilee - A rack compatible Ruby HTTP server built on Vert.x 3.
  • Knot.x - Efficient & high-performance integration platform for modern websites built on Vert.x 3.
  • Irked - Annotations-based configuration for Vert.x Web, with a controller framework and expressive APIs for REST.
  • REST.VertX - Lightweight JAX-RS (RestEasy) like annotation processor for Vert.x verticals.
  • Atmosphere Vert.x - Realtime Client Server Framework for the JVM, supporting WebSockets and Server Sent Events with Cross-Browser Fallbacks.
  • Vert.x Vaadin - Run Vaadin applications on Vert.x.
  • Serverx - Allows you to quickly and easily set up a Vert.x-powered server using only route handler annotations.
  • Cloudopt Next - Cloudopt Next is a very lightweight and modern, JVM-based, full stack kotlin framework designed for building modular, easily testable JVM applications with support for Java, Kotlin language, crafted from the best of breed Java libraries and standards.
  • Donkey - Modern Clojure HTTP server and client built for ease of use and performance.
  • SCX - An open and easy-to-use web framework, most functions are based on annotations.
  • vertx-rest - Abstraction over resteasy-vertx to simplify writing a Vert.x REST application based on JAX-RS annotations.

Authentication Authorisation

Database Clients

Clients for connecting to databases

  • Relational Databases

    • Reactive SQL Client (stack) - High performance reactive SQL client.
    • JDBC (stack) - Asynchronous interface around a JDBC datasource.
    • MySQL / PostgreSQL (stack) - Asynchronous Client for MySQL/PostgreSQL.
    • PostgreSQL - Reactive PostgreSQL Client.
    • database - Client for Oracle, PostgreSQL, SQL Server, HyperSQL, etc. designed for security, correctness, and ease of use.
    • jOOQ - Doing typesafe, asynchronous SQL and generate code using jOOQ.
    • jOOQx - Leverages the power of typesafe SQL from jOOQ DSL and uses the reactive and non-blocking SQL driver from Vert.x.
  • NoSQL Databases

    • MongoDB (stack) - An asynchronous client for interacting with a MongoDB database.
    • Redis (stack) - Asynchronous API to interact with Redis.
    • Cassandra (stack) - A Vert.x client allowing applications to interact with a Cassandra service.
    • Cassandra - Asynchronous API to interact with Cassandra and Cassandra Mapping.
    • OrientDB - Non-blocking OrientDB server integration.
    • Bitsy - Non-blocking Bitsy Graph server integration.
    • MarkLogic - Asynchronous client for Marklogic Database Server.
    • SirixDB - Non-blocking SirixDB HTTP-server.
    • DGraph - An example on how to build a Vert.x gRPC compliant client. Here targeting dgraph
    • RxFirestore - Non-blocking Firestore SDK written in a reactive way.
    • MongoDB - Pure functional and reactive MongoDB client on top of Vert.x Effect. Full support for retry, fallback and recovery operations.
    • Aerospike - Asynchronous and non-blocking API to interact with Aerospike server. Uses AerospikeClient's async commands internally and handles the result on the Vert.x Context.
  • vertx-pojo-mapper - Non-blocking POJO mapping for MySQL and MongoDB.

  • vertx-mysql-binlog-client - A Vert.x client for tapping into MySQL replication stream.

Integration

  • Server-Sent Events

    • jEaSSE - Java Easy SSE. A simple, lightweight implementation of SSE.
    • vertx-sse - Vert.x SSE implementation + event-bus SSE bridge.
  • Mail

  • REST

  • File Server

  • Messaging

    • AMQP 1.0 (stack) - Interact with AMQP 1.0 servers using the Vert.x Producer and Consumer APIs.
    • MQTT (stack) - Provides two different components: an MQTT server for handling all the MQTT communication and messages exchanges with clients and an MQTT client for sending and receiving messages against an MQTT broker.
    • RabbitMQ (stack) - A RabbitMQ client (AMQP 0.9.1).
    • Kafka Client (stack) - A Kafka client.
    • kafka - Kafka client for consuming and producing messages.
    • SaltStack - A bi-directional bridge between the SaltStack event system and the Vert.x event bus.
    • STOMP (stack) - A Kafka client and server.
    • ZeroMQ - ZeroMQ Event Bus bridge.
    • Azure ServiceBus - Azure ServiceBus producer and consumer (fully async, doesn't use Microsoft Azure SDK).
    • AMQP 1.0 - Kafka bridge - Bridge for sending/receiving messages to/from Apache Kafka using the AMQP 1.0 protocol.
    • Vert.x Kafka Client (stack) - Apache Kafka client for reading and sending messages from/to an Apache Kafka cluster.
    • The White Rabbit - An asynchronous RabbitMQ (AMQP) client based on Kotlin coroutines.
    • WAMP Broker - A WAMP broker you can embed into your Vert.x application.
  • JavaEE

    • JCA adaptor (stack) - Java Connector Architecture Adaptor for the Vert.x event bus.
    • Weld - Brings the CDI programming model into the Vert.x ecosystem (register CDI observer methods as Vert.x message consumers, CDI-powered Verticles, define routes in a declarative way, etc.).
  • Meteor

    • Meteor - Meteor integration support through Vert.x event bus.
  • Metrics

  • Netflix - Hystrix

  • Dart

  • Push Notifications

    • Onesignal - Send push notifications to (mobile/web) apps from your Vert.x application with OneSignal.
  • CNCF CloudEvents

Middleware

  • Apache Camel - Apache Camel component for bridging Camel with the Vert.x event bus.
  • Gateleen - Middleware library based on Vert.x to build advanced JSON/REST communication servers.
  • Gravitee.io - An OSS API Platform including an API Gateway and an OAuth2 / OIDC authorization server based on Vert.x Core / Vert.x Web and other modules.
  • API Framework - Vert.x and Glue based microservice framework removing distinction between standalone and serveless application. All services can run in standalone server, but, if required, same codebase can be used to run any service as serverless application.

Language Support

Programming language support for Vert.x

  • Ceylon (stack) - Ceylon support.
  • Groovy (stack) - Groovy support.
  • Java (stack) - Vert.x main repository (including the Java API).
  • JavaScript (stack) - JavaScript support.
  • Python - Python support.
  • Ruby (stack) - Ruby support.
  • Scala - (stack) - Scala support.
  • Kotlin - (stack) - Kotlin support.
  • EcmaScript - EcmaScript >=6 (JavaScript) support.
  • Php - Php support.

Language extensions

Reactive

  • Reactive Streams (stack) - Vert.x Reactive Streams.
  • Vert.x Rx (stack) - Vert.x Reactive Extensions.
  • Vert.x Sync (stack) - Vert.x fiber support.
  • Kotlin coroutines (stack) - Vert.x support for Kotlin coroutines.
  • vertx-util - Light weight promises & latches for Vert.x.
  • QBit - Async typed actor-like lib that runs easily in Vert.x Async Callbacks. Callback management.
  • VxRifa - Utility library for Vert.X that allows using strong-typed interfaces in communication through EventBus.
  • Vert.x Effect - Pure functional and reactive library based on the IO Monad to implement any complex flow. Full support for retry, fallback and recovery operations.
  • SmallRye Mutiny - Intuitive event-driven reactive programming library for Java with bindings for Vert.x.

Sync Thread Non Block

  • Sync - Synchronous but non-OS-thread-blocking verticles.

Vert.x Event Bus Clients

Clients to connect applications to the Vert.x event bus

Vert.x Event Bus Extensions

  • Eventbus Service - Code generator for type-safe event bus communication via simple Kotlin interfaces.

Cluster Managers

Implementations of the Vert.x cluster manager SPI

Cloud Support

Microservices

  • Service Discovery (stack) - Vert.x Service Discovery.
  • Circuit Breaker (stack) - Vert.x Circuit Breaker.
  • Service Discovery - Consul (stack) - Consul extension to Vert.x Service Discovery.
  • Service Discovery - Docker links (stack) - Docker extension to Vert.x Service Discovery.
  • Service Discovery - Kubernetes (stack) - Kubernetes extension to Vert.x Service Discovery.
  • Service Discovery - Redis backend (stack) - Redis storage backend for Vert.x Service Discovery.
  • Vert.x GraphQL Service Discovery - GraphQL service discovery and querying for your Vert.x microservices.
  • Resilience4j - Resilience4j is a fault tolerance library designed for Java8 and functional programming. Resilience4j provides modules for Circuit Breaking, Rate Limiting, Bulkheading, Automatic retrying, Response caching and Metric measuring.
  • Failsafe - Failsafe is a lightweight, zero-dependency library for handling failures in Java 8+. Concise API. Integration with libraries that use their own schedulers for async executions, such as Akka or Vert.x. Vert.x example
  • Autonomous Services - A toolkit for creating autonomous services. An architecture that leverages vert.x and nannoq-tools to provide an event-based reactive architecure without centralized components, neither for communication or data, providing a theoretically linear scalability across the architecture.
  • Apache ServiceComb Java Chassis - ServiceComb Java Chassis is a Software Development Kit (SDK) for rapid development of microservices in Java, providing service registration, service discovery, dynamic routing, and service management features.

Search Engines

Template Engines

  • KorTE Template Engine - Kotlin Template Engine similar to Twig/Django/Liquid supporting calling Kotlin suspend methods.

Service Factory

Config

Dependency Injection

  • Vert.x Guice - Vert.x verticle factory for Guice dependency injection.
  • Vert.x HK2 - Vert.x verticle factory for HK2 dependency injection.
  • Spring Vert.x Extension - Vert.x verticle factory for Spring DI injection.
  • Vert.x Beans - Inject Vert.x objects as beans into your Spring application.
  • QBit - QBit works with Spring DI and Spring Boot (and of course Vert.x). Allows you to use QBit, Vert.x, Spring DI and Spring Boot in the same application.
  • Vert.x Eclipse SISU - Vert.x integration with Eclipse SISU DI container.
  • Vert.x Spring Verticle Factory - A Vert.x Verticle Factory that makes use of Spring to obtain and configure Verticles.
  • Glue - Proven and opinionated programming, and configuration model for Java and Vert.x based applications. Inspired from ATG Nucleus, provides powerful layer base configuration management using simple properties file.

Testing

Development Tools

  • Vert.x shell (stack) - Allows for interaction with Vert.x from the command line.
  • Vert.x health check - Allows for remote health checking in Vert.x projects.
  • Vert.x Hot - A Maven plugin for the hot-deploy of Maven Vert.x projects.
  • slush-vertx - A template driven Vert.x project generator for different languages and build tools.
  • Vert.x for Visual Studio Code - A Visual Studio Code (polyglot) plugin for Vert.x. Also available from the Marketplace.
  • Vert.x Starter - A browser-based project starter and project templates for Vert.x applications.
  • Vert.x LiveReload - A simple livereload server for Vert.x applications.
  • openapi-generator - OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3).

Miscellaneous

  • Vert.x Child Process - Spawn child process from Vert.x.
  • vertx-redisques - A highly scalable redis-persistent queuing system for Vert.x.
  • Simple File Server - An OpenStack Swift compatible distributed object storage server that can serve and securely store billions of large and small files using minimal resources implemented using Vert.x.
  • Vert.x Boot - Deploying verticles from a HOCON configuration.
  • GDH - Generalized Diffie-Hellman key exchange Java library built on top of Vert.x.
  • vertx-values - Send immutable and persistent JSON from json-values across the event bus.

Distribution

Examples

Deployment

Utilities

  • Chime - Time scheduler working on Vert.x event bus allowing for scheduling with cron-style and interval timers.
  • Vert.x Cron - Schedule events with cron specifications. Has event bus and Observable versions.
  • Vert.x CronUtils - An abstraction of cron-utils for the vertx scheduler. Unix, Cron4j and Quartz style expressions are supported.
  • Vert.x Scheduler - A lightweight plugable scheduler based on plain Vert.x core without any external libs for scheduling with cron-style and interval timers with a detail monitor on both sync and async task.
  • Vert.x POJO config - Allows for mapping between standard JSON configuration and a (type-safe) configuration Java bean. Also allows the configuration bean to be validated through JSR 303.
  • Vert.x Async - Portage of caolan/async nodejs module to Vert.x framework that provides helpers methods for common async patterns.
  • Vert.x JOLT - JSON to JSON transformation tool based on the original bazaarvoice JOLT project. Helpful to transform different json structure into an expected json format.
  • Vert.x Dependent Verticle Deployer - A Vert.x Verticle intended to deploy verticles and their dependent verticles.
  • Vert.x Dataloader - Java port of Facebook Dataloader for Vert.x. Efficient batching and caching for your data layer.
  • Vert.x Util - A collection of Vert.x utility methods.
  • Vert.x Web Accesslog - Just a simple handler to be used in Vert.x Web to generate access logs.
  • Vert.x GraphQL Utils - A route handler and Vert.x compatible interfaces to handle GraphQL queries in Vert.x and Vert.x Web.
  • Nannoq-Tools - Nannoq-Tools is a toolkit for constructing robust, scalable and distributed applications leveraging Vert.x including modules for authentication, cluster management, Firebase Cloud Messaging, DynamoDB, fully generic queries, REST, and more.
  • Contextual logging - Mapped Diagnostic Context (MDC) that works with the Vert.x event-loop model.
  • Vert.x JsonPath - A very basic implementation of JsonPath using Vert.x’s JsonObject and JsonArray, mimicking their getX, containsKey, put and remove methods.

Presentations

Community

  • User Group - Discuss all user issues related to using Vert.x.
  • Developer Group - A group for Vert.x core developers and contributors.
  • Discord Server - Chat about any Vert.x-related topic.
  • Issues - Vert.x core issue tracker.
  • Wiki - Contains useful information about Vert.x.
  • Blog - The official Vert.x blog containing many tutorials and other information.

Articles

Tutorials

Front-End

  • VertxUI - A pure Java front-end toolkit with descriptive fluent views-on-models, POJO traffic, JUnit testing on the virtual DOM or mixed-language on a real DOM, and more.

Contribute

Contributions welcome! Read the contribution guidelines first.

More Repositories

1

vertx-examples

Vert.x examples
Java
3,497
star
2

vertx-web

HTTP web applications for Vert.x
Java
1,077
star
3

vertx-guide-for-java-devs

Vert.x 3 guide for Java developers
Java
546
star
4

vertx-lang-kotlin

Vert.x for Kotlin
Kotlin
283
star
5

wiki

The wiki and issues for the vert-x3 organisation
192
star
6

vertx-mqtt

Vert.x MQTT
Java
177
star
7

advanced-vertx-guide

A gentle guide for advanced Vert.x users
CSS
167
star
8

vertx-rx

Reactive Extensions for Vert.x
Java
144
star
9

vertx-maven-starter

Maven project template for Vert.x
Java
140
star
10

vertx-jdbc-client

JDBC support for Vert.x
Java
125
star
11

vertx-redis-client

Redis client for Vert.x
Java
125
star
12

vertx-stack

Vert.x stack
Java
121
star
13

vertx-lang-scala

Vert.x for Scala
Scala
118
star
14

vertx-mysql-postgresql-client

This client is deprecated - use instead
Java
117
star
15

vertx-virtual-threads-incubator

Vert.x virtual threads incubator
Java
115
star
16

vertx-service-discovery

Some tools one can use for doing microservices with Vert.x
Java
113
star
17

vertx-sync

Java
98
star
18

vertx-gradle-starter

Gradle project template for Vert.x
Java
91
star
19

vertx-kafka-client

Reactive Kafka Client for Vert.x
Java
80
star
20

vertx-grpc

gRPC for Vert.x
Java
79
star
21

vertx-hazelcast

Hazelcast Cluster Manager for Vert.x
Java
74
star
22

vertx-rabbitmq-client

Vert.x RabbitMQ Service
Java
74
star
23

vertx-zookeeper

Zookeeper based cluster manager implementation
Java
72
star
24

vertx-service-proxy

EventBus Proxy generation
Java
67
star
25

vertx-eventbus-bridge-clients

Home for various EventBus Bridge clients
Java
63
star
26

vertx-circuit-breaker

A circuit breaker for Vert.x
Java
60
star
27

vertx-mongo-client

Mongo Client for Eclipse Vert.x
Java
58
star
28

vertx-web-site

Former vertx.io 3.x web-site, now archived. Instead use https://github.com/vertx-web-site/vertx-web-site
HTML
54
star
29

vertx-config

Vert.x Configuration Service
Java
53
star
30

vertx-reactive-streams

Java
48
star
31

vertx-tcp-eventbus-bridge

Java
48
star
32

vertx-micrometer-metrics

Vert.x metrics implementation for Micrometer.io
Java
43
star
33

vertx-starter

Home of the Vert.x Starter
Java
42
star
34

issues

35
star
35

vertx-lang-js

Nashorn JavaScript implementation for Vert.x
JavaScript
35
star
36

vertx-ignite

Java
34
star
37

vertx-shell

The shell for Vert.x
Java
34
star
38

vertx-mail-client

Java
33
star
39

vertx-consul-client

Vert.x Consul Client
Java
33
star
40

vertx-cassandra-client

Cassandra client for Vert.x
Java
33
star
41

vertx-unit

Async polyglot unit testing for Vert.x.
Java
33
star
42

vertx-dropwizard-metrics

Vert.x Metrics
Java
32
star
43

vertx-sql-common

Common SQL interfaces for Vert.x SQL services
31
star
44

vertx-stomp

STOMP client/server implementation
Java
29
star
45

vertx-proton

Java
26
star
46

vertx-docgen

Documentation generation
Java
23
star
47

vertx-bus-bower

JavaScript
21
star
48

vertx-codetrans

Code translator
Java
20
star
49

vertx-openshift-cartridge

Shell
20
star
50

vertx-service-factory

Service Factory implementation
Java
20
star
51

vertx-4-migration-guide

Migration to Vert.x 4 guide
20
star
52

vertx-sbt-starter

Scala
17
star
53

vertx-amqp-client

An AMQP client for Vert.x
Java
16
star
54

vertx-io_uring-incubator

io_uring transport incubator
Java
16
star
55

vertx-camel-bridge

Let Vert.x applications interact with Camel endpoints
Java
15
star
56

vertx-infinispan

Infinispan Cluster Manager for Vert.x
Java
14
star
57

vertx-scala.g8

Scala
14
star
58

vertx-lang-ruby

Vert.x Ruby support
Ruby
14
star
59

vertx-health-check

Java
13
star
60

vertx-lang-groovy

Vert.x Groovy support
Java
13
star
61

vertx-maven-service-factory

Verticle factory for resolving verticles from Maven at run-time
Java
12
star
62

vertx-lang-ceylon

Vert.x 3 code generator for Ceylon
Java
12
star
63

vertx-cli-starter

Shell
10
star
64

vertx-auth

Java
10
star
65

vertx-jca

Repository for all Vertx-JCA related information, development etc
Java
10
star
66

vertx-sockjs-service-proxy

Vert.x SockJS Service Proxy
Java
10
star
67

vertx-dependencies

Defines the versions of the Vert.x components of the Vert.x stack.
9
star
68

vertx-http-service-factory

Java
9
star
69

vertx-hawkular-metrics

Java
9
star
70

vertx-openshift-s2i

Vert.x OpenShift Source To Image
Shell
8
star
71

vertx-lang-python

Java
8
star
72

vertx-amqp-bridge

Java
8
star
73

conf-schedule

Schedule of various Eclipse Vert.x conferences across the world
Java
8
star
74

vertx-embedded-mongo-db

Java
7
star
75

vertx-parent

The base parent pom for Vert.x projects
6
star
76

vertx-jgroups

JGroups based cluster manager implementation
Java
5
star
77

vertx-grpc-java-compiler

gRPC Java Compiler for Vert.x
C++
5
star
78

vertx-bridge-common

Common stuff for Vert.x Eventbus bridges
Java
5
star
79

vertx-amqp-service

Java
3
star
80

eclipse-proposal-wip

Proposal for Eclipse Vert.x work in progress
3
star
81

vertx4-scala.g8

Scala
3
star
82

vertx-5-migration-guide

Migration to Vert.x 5 guide
3
star
83

vertx-ext-parent

Base parent pom for Vert.x extension projects
2
star
84

jenkins-shared-library

Groovy
2
star
85

prez-demos

Demos that I do in Vert.x 3.0 presentations
JavaScript
2
star
86

vertx-client-services

Service proxies for vertx-mail-client, vertx-mongo-client and vertx-consul-client
Java
1
star
87

vertx-component-discovery

Groovy
1
star
88

vertx-eventbus-link

Java
1
star
89

vertx-eb-wire-protocol

Vert.x event bus wire protocol
1
star
90

vertx-openshift-diy-quickstart

Shell
1
star
91

vertx-perf

Java
1
star