This is something we considered as the project evolved. Initially Zorium was very different from React, but over time took more ideas from React (some of their work is quite excellent).
1. The biggest difference is definitely the RxJS observable support, which solves a lot of model problems in an elegant way.
2. I wish I had some examples published (we have a few internally), but having RxJS observables actually do a phenomenal job of dealing with the animation problem (think .delay() state and bi-directional communication). I hope to be able to update the docs soon with more details.
3. Aside from those you mentioned, performance was another big problem. React is slow (not as bad as Angular), but more importantly because the code was so complex I was unsure if we could modify it to meet our needs. At Clay.io we push the boundaries of what Mobile-web can do, and performance is absolutely critical. I realize this answer is still sub-par, and I agree, Zorium was mostly build off of Mithril and just happened to look like React in the end.
Edit: It's also worth mentioning that API design (in z.router) and application structure are what took the most time. Because Zorium is built on virtual-dom there isn't really much custom code.
That's exactly what I thought the moment I read the post. The fact that Slack used bcrypt is good, and if they used a high number of iterations that's better, but neither will help you if your password happens to be on the crackers' list of 10,000 most common passwords.
Clay.io - http://clay.io - San Francisco, CA Hiring Full-Stack Engineers. Shoot me an email: austin@clay.io
===================
What we're building
===================
We're building Steam for mobile games - competing with the app stores to provide a better way to discover games on mobile. By leveraging the web we reduce the friction between discovery and gameplay, which we think is key in reaching the next level of viral games.
Clay.io - http://clay.io - San Francisco, CA
Hiring Full-Stack Engineers. Shoot me an email: austin@clay.io
===================
What we're building
===================
We're building Steam for casual mobile games - competing with the app stores to provide a better way to discover games on mobile. The approach we're taking focuses on mobile web games - games people can access immediately without the added friction of installing them in an app store.
==============
Where we're at
==============
Small team of 3, with large audience of 5,000,000+ users to push code to. https://github.com/claydotio/clay-mobile for general idea of the quality of code we write.
1. The biggest difference is definitely the RxJS observable support, which solves a lot of model problems in an elegant way.
2. I wish I had some examples published (we have a few internally), but having RxJS observables actually do a phenomenal job of dealing with the animation problem (think .delay() state and bi-directional communication). I hope to be able to update the docs soon with more details.
3. Aside from those you mentioned, performance was another big problem. React is slow (not as bad as Angular), but more importantly because the code was so complex I was unsure if we could modify it to meet our needs. At Clay.io we push the boundaries of what Mobile-web can do, and performance is absolutely critical. I realize this answer is still sub-par, and I agree, Zorium was mostly build off of Mithril and just happened to look like React in the end.
Edit: It's also worth mentioning that API design (in z.router) and application structure are what took the most time. Because Zorium is built on virtual-dom there isn't really much custom code.