
Ask HN: Best front-end framework to use with React to make a web app? - hanniabu
I&#x27;ve been looking at Meteor and Electron to build a node.js app. Are there any other options to consider?  Which would you go with? Please support your decision with a few arguments such as one has more libraries, better structure, preference, etc
======
dome82
I use Redux with React. Quite happy with that.

Here you can find the FullStack Redux Tutorial:
[http://goo.gl/QYLB3s](http://goo.gl/QYLB3s)

It is a great starting point if you want to learn more about Redux :)

~~~
officialchicken
Another vote for React + Redux here.

I'm using a mix of ES6 and JSX with Babel.

My favorite aspect is that it seems like there is less mental overhead/stress
- that makes coding easier and more enjoyable for me - but there's no way to
quantify that other than I don't feel drained at the end of the week. It seems
to me there is a lot less you have to keep in your head (state) once you "get
it" vs. ng directives (state+behavior+scope) or 2-way backbone data binding
(kitchen sink). Personally not a big fan of Webpack only because it doesn't
have all the nice plugins and addons available for grunt/gulp.

The React developer add-on for chrome is pretty impressive, better than the
ones for ng. When things go really bad (white page of death), it's much much
faster to find and fix the issue than with other frameworks using the chrome
extension. It provides better insight into what your code is doing/try to do.

The hardest part I found when starting React was deciding to Flux or not to
Flux; and then which router to use. A couple hours to kicking around a few
starter kits should be expected.

~~~
hanniabu
Can you please clarify something. You say you vote for React+Redux,but then at
the end go on to say the difficulty of using Flux or not and what router to go
with. Are you saying this as a reason that you went with Redux, or are you
saying you use Flux in addition to Redux?

~~~
ac2u
I don't think he/she meant that they used a flux pattern in addition to redux.
Even though redux differs in many ways (self-admittedly) to canon Flux
implementations, it's largely regarded to be in the flux family when folks are
weighing up alternatives.

The problem detailed reared itself in my own efforts too, all the flux
implementations promise elegance until a router comes along, which in many
ways is another actor exerting control over what's on the user's screen.

You have to then make the choice on whether you want the router to handle what
high level components are displayed, or if you want changes in the router to
feed directly into changes in your state tree and then have it handled from
there. That's where the complication comes in.

------
kriswill
There are a few choices, like using React with Backbone
[https://blog.engineyard.com/2015/integrating-react-with-
back...](https://blog.engineyard.com/2015/integrating-react-with-backbone)

Facebook also came out with a storage interface and state management library
that is used to manage unidirectional data with a backend called Flux
[https://facebook.github.io/flux/](https://facebook.github.io/flux/)

And a lot of the cool kids these days are using a Flux-like state management
system called Redux -
[http://rackt.org/redux/index.html](http://rackt.org/redux/index.html) which
is roughly based on the immutable patterns from Haskell/Elm.

------
atarian
I'm using React/Flux/Electron and am really comfortable with it. Highly
recommend checking out this project (which was posted on HN a while back) for
ideas: [https://github.com/jingweno/hacker-
menu](https://github.com/jingweno/hacker-menu)

~~~
hanniabu
Have you ever played with Meteor?

~~~
atarian
I used to use Meteor a lot. However, I ran into problems with Meteor eating up
lot's of memory for a very trivial app. Maybe things have improved now, but I
prefer to work without the magic.

------
TheM00se
React itself can be used as a framework to make front-ends.

