I want to see if anyone is already getting bored about React.js like me. It's still fun to try React Native but React.js is old, its 2012 technology(not quite sure about 2012, but old enough even 2013). React is not nicely decoupled, and not a great framework for animations. It's becoming as useful and as mature like jQuery. I think we can go beyond.
Well, I've been programming for 5 years only from learning C in school and trying Python on my own(not counting course on Visual Basic since it was only a course). I can't build a whole framework like React. However, I can see some vision ahead and try them with my code. So they are Respo and Quamoit. Both are experimental project and in early stages(Docs not ready, sorry for that). Just hope they may be sources of inspirations. Respo repo https://github.com/mvc-works/respo/ example app https://github.com/Memkits/wanderlist/ Respo is like React but a lot simplified and decoupled. I implemented a simpler DOM diff algorithm and bound events. By now I can build very simple apps with it. I think the shiny parts are: * components are designed to fit with caching so that server side rendering would be faster * DOM diff/patching are decoupled, so possible to diff on server and patch at clients * element DSL in ClojureScript syntax, not JSX style * component states are stored global, so not losing during hot swapping You may find more on Hashnode and Youtube: https://hashnode.com/@jiyinyiyong/stories https://www.youtube.com/user/jiyinyiyong/videos Quamolit repo(alse example) https://github.com/Quamolit/quamolit components source code https://github.com/Quamolit/quamolit/tree/master/cirru-src/quamolit/component Quamolit is an experiment on canvas and it relies on Hit Regions APIs to work, so not even usable for build real apps. The nice thing is, in React it's difficult to make nice animations, in declarative canvas libraries there's no abstractions to compose components like React, Respo is maybe a way to combine them. You can browse the source code and take a look on my Youtube. For each component, there's functions of `init-state update-state init-instant on-tick on-update on-unmount render`, you may see what's going on by the names. So besides **state**, Quamoit introduced **instant** as the animations states, and it will be updated by **on-tick**(as requestAnimationFrame calls) **on-update**(as global store and states changes) **on-unmount**(as the component start leaving). Currently there are only videos and tweets(@jiyinyiyong) on Quamolit. I will add post when it's more stable. Projects are in early stage and when I go back to work a weeks later I will probably spend much time on them. I think my experience is not enough for real world frameworks, I hope someone may pick my ideas and use them in their own projects. I used to write in Chinese at segmentfault.com/blog/jiyinyiyong and I will later write on Hashnode in English to see if someone is interested. Hope you like my ideas. Thanks. -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/clojurescript.
