Tonnerre provides simple messaging between applications. By default, the messages are transferred using TCP/IP sockets. As such, the sender and receiver can be on the same or different machines. 2 types are supported for the message payload: key/value pairs or raw strings. Raw string payloads are useful for transferring JSON or XML.
BSD
Chaudière - C++ core functionality with sockets, threading, configuration, etc. Poivre - c++ unit tests
Tonnerre uses an .INI for configuration. The .INI format was chosen because it's very simple and I like simple.
This project is implemented in c++20. It is tested on Linux (Ubuntu, Debian, and Mint), FreeBSD, and OpenBSD.
The code is targeted for c++20.
What does 'Tonnerre' mean? It's a French word that means "thunder" or "thunder clap". My grandfather used to frequently say "Tonnerre!" as an expression of astonishment (similar to how people say "Really!").