Hacker News new | past | comments | ask | show | jobs | submit login

If you guys liked vue, you will absolutely love riot.js. It's so simple and minimal that I only had to look at their docs for a couple minutes and I was on my way. In this day and age where client side frameworks are overly obese , riot was afresh air. I like it more than any other frameworks out there.



I switched from Riot to Vue, and am glad I made the change.

Biggest things I noticed:

1) Getting stared with the basics is about equally easy in both frameworks. Both have a very simple and clean API and component system.

2) Vue has more advanced features -- dynamic components, easy two-way binding, watching variables, custom events, routing, etc, all of which I have used at some point as my app has gotten bigger

3) Riot seems to have more open bugs, including one major issue where even when an "if" statement evaluates as false in a template, the component still gets processed. This is supposed to be fixed in the next big release, but who knows when that will be.

4) Vue seems to be much more active -- more users, more commits, so I think it is a better long term bet.


The Vue docs have an interesting comparison https://vuejs.org/guide/comparison.html#Riot

BTW GitLab looked for a long time at what framework to use and we're happy after switching to Vue


Really? I couldn't even figure out how to get started with Riot. Vue's Guide walks you step-by-step from scratch how to get up and running. It also has a section on how to structure larger apps once you understand the basics. Riot's Guide is a topic overview. I had to find tutorials outside the main site.


What got me started in a jiffy was just looking at their live demo, http://riotjs.com/play/. Sometimes code is it's best documentation.


I don't think that link points to what you intended: it links to a simple html file with a blank script file.

Code can be great documentation if you already understand how to get there. Sometimes maps are better for people new to the tech.


Riot sounds good, but what about performance? last time I checked riot performed quite bad in terms of performance.

An example: https://cdn.rawgit.com/krausest/js-framework-benchmark/956b0...


I think it's fast, fast enough to not have to worry about. OTOH, Angular with it's 2-way bindings gave me ton of performance problems in the past, so if anything, I would say that 1-way binding frameworks (riot/react) will be much more performant on a real world project.


The way Angular 1 and Vue.js 1 implement 2-way binding is very different (dirty checking vs getters-setters), which is why Vue.js 1 implementation doesn't have performance issues.


Speed is a problem in any reasonably complex app.

While i might say that riot's speed won't be an issue in 80℅ cases, what about the 20% cases? And its not like difference in speed is small.

As the benchmark(i linked in first post) shows, riot is very slow compared to the competition.

On the other hand, vue (especially vue 2) is among the fastest.


Vue already seems pretty minimal to me. What advantages does riot have over vue?


I'd say that if Vue.js is like Rails, then Riot.js is like Sinatra. It's an even more simplified version. For one, Riot doesn't include 2-way binding, which is how I like it, since I like having more control over the DOM of when and how to update it. Also the syntaxes are cleaner and less verbose. I also appreciate it's style of creating and mounting components.


Vue.js 2 doesn't include 2-way binding. As for syntax, I don't see what you're seeing by looking at the docs. And in Vue you can also create and mount components.

EDIT: I realized after posting this comment that 2-way binding has only partially gone away, v-model still works, it was prop syncing that was deprecated.


Yeah, but v-model is a good 2-way binding. So it can't be removed




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: