A

A data oriented TodoMVC using Replicant

Hacker News

A data oriented TodoMVC using Replicant

Data oriented. It's been a theme throughout my rather long career. Especially the last five or so years, when I've been using Clojure in anger. But even with Clojure there are a lot of not fully data oriented ways of doing things. Building frontends (which I do for a living) has been particularly tricky to keep as data oriented as I wish. Enter Replicant https://github.com/cjohansen/replicant Replicant is one of those libraries which make you say “I can't believe this is not React”. But it really isn't React. It brings 90% of the benefits of React, without bringing in that whole world of churn and not-so-data-oriented ways of doing things. Replicant has zero dependencies. It is created by Christian Johansen, a developer as data oriented as they come. To get where Replicant, and this TodoMVC example, comes from, have a watch at Christians JavaZone Oslo 2023 talk, Stateless Data-driven UIs https://2023.javazone.no/program/85f23370-440f-42b5-bf50-4cb... As Replicant is a library, and not a framework, there are as many ways to use it to build TodoMVC as there are developers. This example takes inspiration from my previous favorite UI libraries, Reagent and re-frame, from which I use what I think are their best ideas. The example implements a tiny (less than 50 loc) framework and then leverages that to create perhaps the most data oriented TodoMVC ever (I am expecting to be shown a lot of examples that are as, or more, data oriented). The unit tests in the example take advantage of this and test things that you normally need to bring in browser drivers to test. The example is finished, but the tests are work in progress (about 30% done, I think). I've tried to make the example super easy to clone and play with. And I've tried to make the README be clear and useful to understand the example and what's unique with it. Please give it a spin and tell me what you think! If you want to help with test coverage, that would be awesome too.

Share card

Actual performance

11points
Made the leaderboard

Launch Intel predictions

Analyze your own launch →
Indie HackersFits the IH revenue-focused audience · Strong signals: created · Missing: supports, reddit linkedin, podcasting
86%86% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Product HuntOn track for Day 1 leaderboard · Strong signals: agent, tiny, using · Missing: mac, agents, macos
76%76% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: ide, io · Missing: https docs, excited, just released
70%70% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
TrustMRRLess likely to generate early MRR · Strong signals: way · Missing: mobile apps, ios, personal
45%45% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
33%33% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
14%14% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Correct prediction on native model

Similar products

Cl
Cloudftp.ai for transferring data using FTP53%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Cloudftp.ai for transferring data using FTP

Hacker News1
go
go-openflights – An API for OpenFlights data using Protobuf and Golang56%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

go-openflights – An API for OpenFlights data using Protobuf and Golang

Hacker News10
Ch
Chat with your data using LangChain, Pinecone, and Airbyte72%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Chat with your data using LangChain, Pinecone, and Airbyte

Hacker News220
Us
Using data to figure out where to live58%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Using data to figure out where to live

Hacker News3
HT
HTML5 IndexedDB polyfill using WebSQL60%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

HTML5 IndexedDB polyfill using WebSQL

Hacker News2
Se
Serving Django and Twisted using HAproxy50%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Serving Django and Twisted using HAproxy

Hacker News7
Ba
Backbone TodoMVC with redis persistency & websockets using copacabana53%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Backbone TodoMVC with redis persistency & websockets using copacabana

Hacker News1
Wh
Who's using Rails?39%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Who's using Rails?

Hacker News2
Os
Oscilloscope over UDP using an mbed41%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Oscilloscope over UDP using an mbed

Hacker News2
Us
Using statistics to find if an Oculus Rift is being worn33%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Using statistics to find if an Oculus Rift is being worn

Hacker News3