What does HackerNews think of matrix-bot-sdk?
TypeScript/JavaScript SDK for Matrix bots
This seems like a good idea for a bot built with https://github.com/turt2live/matrix-bot-sdk (which is very easy, I've used it for a few small projects).
The SDK has a callback for each new message - you could just put it into a DB and then render to static text.
For hosting, I believe the flagship host is Element Matrix Services [2]. It's made by the same organization that leads development (it is all FOSS) of Element and the reference server Synapse.
You can also self-host. Synapse is pretty slow and memory-hungry (it's written in Python), but for a small group it still fits pretty comfortably on a $5 DigitalOcean VPS. That's what I'm doing. It took less than an afternoon to set up (`apt install synapse` and then setting some config, mainly—there are a bunch of good guides online) and has been happily running ever since. Matrix is federated, so as long as you set up federation properly, you can seamlessly message anyone on any federated Matrix server. (Federation is opt-in.)
There's also Dendrite and Conduit, Matrix servers written in Go and Rust respectively, which are much leaner and faster. Both are still in beta and missing some features, but are definitely usable.
If you want to mess around with bots, I've had a lot of fun with both the Matrix Rust SDK [3] and JavaScript bot SDK [4]. Both are quite easy to get started with, and as of a few months ago both support E2EE pretty painlessly too (not totally pain-free though lol), which is cool.
Overall, the ecosystem is still maturing imo, but I've been using self-hosted Synapse and Element "in production"—it's me and my girlfriend's primary method of communication—for over a year now with only some minor UX hiccups (mostly issues decrypting E2EE messages in Element). I definitely encourage giving it a shot as long as you're willing to tolerate a few remaining growing pains.
[1]: https://element.io/get-started
[2]: https://element.io/matrix-services
What do you mean by 'smart widgets based on url'?