1 unstable release
Uses new Rust 2024
| 0.1.0 | Sep 7, 2025 |
|---|
#77 in #messaging
1MB
1K
SLoC
MAYDAY 🗣️✉️
A multi-messaging-sevice aggregator into an all-in-one application (android's app beeper-like). The goal is to extend the supported messaging services by writing and sharing your drivers!
Please fully read How to use
Currently supported:
- loopback
- IRC
- ChatGPT
- Telegram
- Messenger
- Matrix
- ...add yours! see contribute

How to use
The app is splat in two:
- a TUI client which displays messages
- a worker which receive messages
Install
cargo install mayday
Compile
cargo build
cargo build --release
Run
You can replace mayday with cargo run --
TUI client
mayday
worker
mayday worker
Using messaging services
After the first usage, mayday will create a config repository which stores messaging service drivers:
- Linux:
/home/$USER/.config/mayday - Windows:
C:\Users\$USER\AppData\Roaming\Julien-cpsn\mayday - macOS:
Users/$USER/Library/Application Support/com.Julien-cpsn.mayday
Add your desired messing service configuration file in this folder. Each service template is available in example_resources.
E.g. for IRC
uuid = "60de91cf-41fc-48ab-893e-b50ff514a706"
discussion_name = "IRC freenode"
[driver]
type = "irc"
channel = "#rust"
server = "chat.freenode.net"
#port = 6697
nickname = "mayday user"
alt_nicks = ["[mayday-user]"]
Cleaning conversations
After the first usage, mayday will create a cache repository which stores messages history:
- Linux:
/home/$USER/.config/mayday - Windows:
C:\Users\$USER\AppData\Roaming\Julien-cpsn\mayday - macOS:
Users/$USER/Library/Application Support/com.Julien-cpsn.mayday
Erasing a file will reset the history.
Contribute
You can develop a new messaging service driver as follows.
- Copy
loopback.rsfromsrc/driverstosrc/drivers<my_awesome_driver>.rs - Add your driver to the
MessagingDriverConfigsenum insrc/drivers/mod.rs - Fill with your code. Keep in mind that
active_poll_received_messagesis called by the client (so when you are using the app)passive_poll_received_messagesis called by the background worker
- Update this README
- Add a configuration example in
example_resources - Create a pull request!
Star history
License
The MIT license for this project can be seen here
Dependencies
~55–77MB
~1.5M SLoC