greenelab / deep-review

A collaboratively written review paper on deep learning, genomics, and precision medicine
https://greenelab.github.io/deep-review/
Other
1.24k stars 272 forks source link

Consider moving from manubot pandoc -> manubot idyll #842

Open cgreene opened 6 years ago

cgreene commented 6 years ago

I had a series of conversations with @mathisonian of idyll ( https://github.com/idyll-lang/idyll ). There are certain interactive elements that could really enhance the introduction of the paper. Our ability to do this depends on upstream integration between idyll and manubot. However, if an idyll converter is implemented there, this would give the ability to dramatically enhance how we introduce neural network architectures, for example. I wanted to create this issue to track the feasibility of this effort based on upstream work.

evancofer commented 6 years ago

My only concern here would be browser compatibility and low bandwidth/high latency users. Regardless, this is definitely interesting, and I look forward to seeing what becomes of this.

As an aside, I immediately thought of this: https://cs.stanford.edu/people/karpathy/convnetjs/

mathisonian commented 6 years ago

Idyll's browser support is IE9+ and it bakes out static html so the content is preserved even in cases where there are javascript compatibility issues or users have javascript disabled.

There is some JS overhead but it depends mostly on how complex the interactive components themselves are - the examples here https://idyll-lang.org/gallery load around 150kb-350kb gzipped (getting those numbers just from a quick glance at the network tab from a few examples)

A convnetjs integration could be fun

cgreene commented 6 years ago

This is now being discussed upstream: https://github.com/greenelab/manubot-rootstock/issues/116

mathisonian commented 6 years ago

To respond to @evancofer's concern, the overhead shouldn't be too bad - the JS is all uglified and compressed to produce relatively small bundles, and static HTML pages are baked out so it will work (without interactivity) even if people have Javascript disabled.