Creating an Open Source Firebase-compatible Realtime Database alternative on WEBCode
Hello all! Thanks for all your support!
To recap, WEBCode is the compute layer for a transparent Cloud with Observablehq as the code host. However, to build services, we also need databases. Because WEBcode is hosted on the WEB, we need a WEB first database, such as Firebase. However, Firebase has a proprietary server implementation, but interestingly, its clients are open source. So I felt I could leverage my prior experience as a Firebase developer to create a fully open-source server implementation upon WEBCode. This would provide us with an always auditable, one-click forkable database to hold the state of our applications, and we can reuse the existing Firebase clients to save time.
I have just taken a major step towards that goal, by developing a Redis backend for a Realtime Database. I have taken the opportunity to explain what makes Firebase special (causal consistency), and used the literate programming notebook form to provide technical explanation in line with the implementation. Check it out https://observablehq.com/@tomlarkworthy/redis-backend-1
In related news, I spoke about creating an Open Source Firebase server at HYTRADBOI conference in April, in that talk I explained how we can use WEBCode as a 3rd party Firebase server, but then it did not have a storage backend. In the next milestone, I will combine these two pieces.
I am very excited about the potential for WEBCode-hosted Firebase database servers. It will
Demonstrate how to create high-performance services on WEBCode
the power of literate programming for readability
solve the biggest weaknesses of backend-as-a-services i.e. lack of customizability.
Please share the notebook in your networks, it’s meant to be both a technical artifact and kind of a technical blog at the same time. If you see a typo leave a comment!
