Show HN: I made a cookie free, zero tracking embeddable live chat widget
tinylivechat.com
tinylivechat.com
Tinylivechat is meant to answer that when it comes to embeddable live chats. It doesn’t use cookies, it doesn’t track users and we anonymize their IPs in our logs. Moreover site visitors can delete the chats from inside the widget, giving them some control as well. It is written in elixir and uses phoenix liveview
This project didn’t come without its challenges. I had never written anything like this before and one of the more interesting parts for me to figure out was how can I avoid spamming my users with notifications when a site visitor starts sending them messages on their site.
I used Phoenix presence and a supervised genserver (process) for this. Each chat session has its own supervised process that is destroyed when the site visitor leaves the site. This process stores if an email notification has been sent to the site owner and if the site visitor has been sent an away message. The process is killed only after a site visitor leaves the site (there was some challenges around this as well - it can’t be killed it right away, and instead only after a few minutes to make sure they are really gone). It maybe better to use a database for this part - but so far it has worked quite well.