Mats documentation is continuously evolving. There should be enough to get you going. What I do hope will trickle in bit by bit, is tips, tricks and techniques from experience gained after using Mats and message-based communications for close to a decade in a substantial financial system.

Documentation @

Step through the navigation pane to the left (desktop) or click “Table of Contents” at top (mobile)! Start here! This is meant to be a guided introduction to what Mats is, and the basics of using it. After that, you should brew a pot of coffee, and read Mats Endpoints, Stages and Initiations, and then the rest of the “Using Mats” section!


Mats have pretty extensive JavaDoc, so when you need something from the API, that’s where you want to go.

Explore Mats, with JBang!

A bunch of JBang script files, as well as a small toolkit, is created to demonstrate Mats 3 in live action. The goal is to make it simple to explore and play around with the library.

Documentation @ Mats3 repo

You should read the repo Most of the rest of the documentation is now moved to this site.

Tests & Code @ Mats3 repo

Many of the unit tests are instructive, so you can head over to the tests of API, Spring, MatsFuturizer, and tests of the testing tools for JUnit / Jupiter / Spring. There’s also a rudimentary “dev area” with a TestJettyServer for the Metrics Interceptor MatsMetrics , and same for Local Introspector LocalHtmlInspect , both of which you may start from your IDE - check out chapter Mats3 Source Code!

Reach out!

Feel free to contact me if you wonder about anything! (It would make sense to first having skimmed through the provided documentation!)

Any suggestions wrt. the documentation is highly appreciated.

Twitter: stolsvik, centiservice

If you find the library interesting, a star on Github/centiservice/mats3 is very much appreciated.