JuliaGizmos / InteractNext.jl

28 stars 6 forks source link

Release status? #14

Open rdeits opened 6 years ago

rdeits commented 6 years ago

It looks like WebIO, Vue, CSSUtil, and Observables have all been released, so all of this package's dependencies should now be available. Is there anything stopping us from releasing an initial version of InteractNext?

piever commented 6 years ago

I guess here is a good point to discuss what's the strategy going forward.

I've been using the JuliaGizmos ecosystem extensively for my GSoC Sputnik project and what I felt was that InteractNext works very well for small applications (i.e. a few sliders and a plot) but has some limitations for more serious usage:

To circumvent this issues, for the Sputnik project, I've created InteractBase and InteractSpectre, which provide a superset of widgets and works with pure HTML (in the Base case) or with the Spectre.css library for styling in the InteractSpectre case (it's quite easy to write new "backends"). It is in general closer to the HTML syntax and allows users to style their widgets using all the classes from the Spectre.css library. Layout seems to work fine and one can use tools from Spectre.css for responsive design (flexbox grid).

I would personally be in favor of copying over the features from InteractNext that are still missing in InteractBase (mainly @manipulate) and release those packages instead. Even if it's slightly slower than releasing InteractNext straight away, I think it's preferable in the long run.

In that scheme the current InteractNext would instead be replaced by a "material design" backend for InteractBase.

shashi commented 6 years ago

That's a good summary, good work! If @JobJob is ok with it, let's copy over @manipulate to InteractBase. We could then working on making this package serve as the Material design theme on top of InteractBase.

shashi commented 6 years ago

I have seen some weird behavior trying to use these widgets with CSSUtil as well... Would be good to not have those issues right off the bat.

rdeits commented 6 years ago

That sounds good too. Honestly, my reasons for asking for a release are somewhat selfish: I'm helping with a Julia Robotics demo next week, and I'd love to have some InteractNext widgets as part of it, but I'd also like to make sure all the required packages are easy for our users to install.

In any case, I'm excited to see whatever the future of Interact turns out to be :wink:

JobJob commented 6 years ago

Yeah I think the InteractBase approach sounds really good. The vue-material/night-cat-cama slider just seemed like the simplest thing to get up and running at the time. Now, it seems like there are better options, and more may emerge so it's good to have a base api to extend. Good stuff @piever