Watch.ly is something I started building around 2018 or so and put it on the back burner because I couldn't figure out the marketing and design stuff. It was going to be a big analytics platform. I "gave up" and pivoted to FastComments in 2019, which is now past 100 paying customers.
I decided to return to Watch.ly and just remove everything from the platform except the Daily. So now it's a daily analytics report, which is really useful for sites big and small. I have been using the Daily by itself for my own projects for a couple years.
I tried to just reuse what I had, to get it launched quickly, and it was fun seeing all the bad engineering from years ago. There aren't even any queues, the Nginx and Node event loops are my buffers at the moment. Luckily it is all horizontally scalable (websockets are scaled horizontally via nginx and client side load balancing, event handler is stateless/easy to horizontally scale, DB is Mongo and I have operational experience sharding, if need be).
If it ever takes off I would probably replace Nginx and NodeJS with just a horizontally scalable service in Rust and use local on-disk queues, so I don't have to mess with Kafka (no kafka plz). I have considered replacing Mongo with ClickHouse but really not sure of the value at the moment, since I can easily scale Mongo to several MM ARR (hundreds of millions of events a day) before it's an issue, and I doubt it will get that big.
One cool thing about Watch.ly is it watches the time on each page and reports on that. This is really cool because you can see oh, users only spend a couple seconds on my pricing page, I must be doing something really bad etc.
It was fun to return to it, and put the domain/services to use again. Enjoy!
I decided to return to Watch.ly and just remove everything from the platform except the Daily. So now it's a daily analytics report, which is really useful for sites big and small. I have been using the Daily by itself for my own projects for a couple years.
I tried to just reuse what I had, to get it launched quickly, and it was fun seeing all the bad engineering from years ago. There aren't even any queues, the Nginx and Node event loops are my buffers at the moment. Luckily it is all horizontally scalable (websockets are scaled horizontally via nginx and client side load balancing, event handler is stateless/easy to horizontally scale, DB is Mongo and I have operational experience sharding, if need be).
If it ever takes off I would probably replace Nginx and NodeJS with just a horizontally scalable service in Rust and use local on-disk queues, so I don't have to mess with Kafka (no kafka plz). I have considered replacing Mongo with ClickHouse but really not sure of the value at the moment, since I can easily scale Mongo to several MM ARR (hundreds of millions of events a day) before it's an issue, and I doubt it will get that big.
One cool thing about Watch.ly is it watches the time on each page and reports on that. This is really cool because you can see oh, users only spend a couple seconds on my pricing page, I must be doing something really bad etc.
It was fun to return to it, and put the domain/services to use again. Enjoy!