https://github.com/robotty/recent-messages2
Service to provide historical messages to Twitch chat clients
https://github.com/robotty/recent-messages2
api chat chatterino irc twitch
Last synced: 2 months ago
JSON representation
Service to provide historical messages to Twitch chat clients
- Host: GitHub
- URL: https://github.com/robotty/recent-messages2
- Owner: robotty
- License: agpl-3.0
- Created: 2020-07-29T18:48:35.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2026-03-29T16:49:07.000Z (2 months ago)
- Last Synced: 2026-03-29T18:05:58.588Z (2 months ago)
- Topics: api, chat, chatterino, irc, twitch
- Language: Rust
- Homepage: https://recent-messages.robotty.de/
- Size: 1.21 MB
- Stars: 84
- Watchers: 4
- Forks: 5
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# recent-messages2

This is a rewrite of the [version 1 recent-messages service](https://github.com/robotty/recent-messages).
See https://recent-messages.robotty.de/ for all kinds of information you might want.
## Build
1. [Install Rust](https://www.rust-lang.org/tools/install)
2. On Debian and Ubuntu: `sudo apt install build-essential`, For other operating systems I recommend you just try to proceed with step three and then try to fix the missing compiler programs/system libraries as they pop up
3. `git clone https://github.com/robotty/recent-messages2.git && cd recent-messages2`
4. `cargo build --release`
5. The binary application will be ready in `./target/release/recent-messages2` (On Windows with the additional `.exe` suffix). The binary is statically linked and so can be moved to other directories or sent to remote machines without need for additional files.
## Install
The `config.toml` is expected to be in the working directory of the process. Edit it to your use case before first startup:
```
editor config.toml
```
The binary can be run with any process manager in the background (systemd etc.), or you can dockerize it. For testing purposes, you can use `cargo run --release`.
A sample file for running it as a systemd unit is provided as `recent-messages2.service`.
```
cp ./recent-messages2.service /etc/systemd/system/recent-messages2.service
```
Now edit the service file to reflect your setup:
```
sudo editor /etc/systemd/system/recent-messages2.service
```
And start the service.
```
sudo systemctl daemon-reload
sudo systemctl enable --now recent-messages2.service
```
View log output/service status:
```
sudo journalctl -efu recent-messages2.service
sudo systemctl status recent-messages2.service
```
Also, wherever you placed the service's working directory, ensure there is a directory called `messages` that is writable for the service. Messages will be persisted there between restarts.
## Web
Instructions for setting up the static website (like the "official" https://recent-messages.robotty.de/) are found in the [README in the `./web` directory of this repo](./web/README.md).
There you can also find an example nginx config.
## Monitoring
A prometheus metrics endpoint is exposed at `/api/v2/metrics`. You can import the `grafana-dashboard.json` in the repository as a dashboard template into a Grafana instance.