Stipple: Reactive data dashboards with Julia [WIP]

They will do the same thing, but the way they do it is different. Dashboards.jl / Dash.jl is about adding Julia as a Dash backend. Stipple is about building and publishing interactive data dashboards with Julia (just like Genie, building a truly native Julia experience). And this difference, I think, is fundamental:

  • I’m focusing (read obsessing) on architecting an efficient, terse, readable, pleasant Julia API. As the resulting frontend is abstracted away, the Julia API is the frontend for the developers. I believe this is easier when you can build from scratch and don’t have to integrate with an existing framework. This was a key factor.
  • a very difficult decision was the choice of frontend framework. Dash uses React.js - Stipple uses Vue.js. React is pretty good but it has a very steep learning curve. It’s just hard (per a recent article from Dash, they have some 50 devs, most of them working on React - Dash defines itself as a React company). Vue, on the other hand, is very easy to learn and I’m hoping it’s going to make it very easy to extend Stipple with extra components. Stipple uses “plain” Vue components (so no JS processing is needed) and all it takes is writing the Julia backend, by specialising a few methods to teach Stipple how to sync the data.

To conclude, they won’t be compatible. And in terms of look and feel, Stipple will most likely be closer to RShiny, possibly combined with RapidMiner (for instance, planning on providing some built in statistical widgets and would definitely like to provide a visual drag-drop editor at some point).

25 Likes