Maker here. Over the past few years I have become more and more interested in how we can replace some traditional SaaS offerings with versions that don’t use cookies or track customers. I don’t view myself as someone who is massively anti-third party cookies, but as someone who is always running side projects, third party cookies just add overhead to my work - as once I use them I need to display a cookie banner and any GDPR requests now require me to reach out to every third party provider that is embedded on my site, or to become more deeply integrated into their service which increases dev time.<p>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<p>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.<p>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.