Great!!! :D On Mon, Jun 8, 2015 at 1:41 PM, Simon Danisch <[email protected]> wrote:
> This looks great =) > > > Am Montag, 8. Juni 2015 18:23:21 UTC+2 schrieb Shashi Gowda: >> >> Hello all! >> >> I have been working on a package called *Escher* over the past several >> months. >> >> It is now quite feature-rich and ready to use in some sense. I put >> together an overview here: >> >> https://shashi.github.io/Escher.jl/* >> >> My aim is to converge at a UI toolkit that any Julia programmer can use >> to create rich interactive GUIs and deploy them over the web, *within >> minutes*. >> >> Escher simplifies the web platform into a simple and pleasant pure-Julia >> library. You don't need to learn or write HTML or CSS or JavaScript. Many >> problems associated with traditional web development basically disappear. >> There is no need to write separate front-end and back-end code, layouts are >> tractable and similar to layouts in the original TeX. Communication is done >> under-the-hood as and when required. No boiler plate code. Things just look >> great by default. >> >> Briefly, here is how Escher works under the hood: >> >> - A UI is an immutable Julia value that is converted to a Virtual DOM >> <http://en.wikipedia.org/wiki/React_%28JavaScript_library%29#Virtual_DOM> >> using the Patchwork <https://github.com/shashi/Patchwork.jl> library. >> Compose graphics and Gadfly plots also get rendered to Virtual DOM as >> well. >> - Subsequent updates to a UI are sent as patches to the current UI over a >> websocket connection >> - Input widgets send messages to the server over the same websocket >> connection >> - Complex things like tabs, slideshows, code editor, TeX and dropdown >> menus are set up as custom HTML elements using the Web Component >> <http://webcomponents.org/> specification, mainly using the Polymer >> library <http://polymer-project.org/>. These things are just Virtual DOM >> nodes in the end. >> >> >> This is still a work in progress, I am very happy to receive any critique >> on this thread, and bug reports on Github >> <https://github.com/shashi/Escher.jl>. I am very excited to see what you >> will create with Escher. >> >> Thanks! :) >> Shashi >> >> * - Escher uses some bleeding-edge Web features, this page might not work >> so well on Safari, should work well on a decently new Chrome, and on >> Firefox if you wait for long enough for all the assets to load. I will be >> fixing this in due time, and also working on a cross-browser testing >> framework. >> >> PS: I have been dealing with RSI issues of late and my hands will >> appreciate any help with expanding the documentation! See >> https://github.com/shashi/Escher.jl/issues/26 if you wish to help. >> > -- -- Filipe Braida do Carmo ------------- BSc em Ciência da Computação - Universidade Federal do Rio de Janeiro - UFRJ Mestre em Engenharia de Sistemas e Computação - PESC/COPPE/UFRJ Doutorando em Engenharia de Sistemas e Computação - PESC/COPPE/UFRJ
