Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: What JS framework do you use for web apps?
13 points by colinhowe on March 22, 2013 | hide | past | favorite | 14 comments
Trying to find out what JS frameworks people actually use to build web applications rather than what people talk about ;)

By frameworks, I'm referring to things like Angular, Dojo, etc. If in doubt, mention it.

I'd also love to hear about what people think of the ones they've used.

I'll collate all this together and report back :)



Surprised it has not been mentioned but almost everything I build not matter the higher level framework, starts with require.js. Require alone goes a long way to cleaning up code structure and overall architecture. I like Dojo for really big corporate apps where I am basically replacing a desktop app with a web based equivalent. It's popularity has faded in the past few years which is a shame, because it and Ext are really the only two frameworks around that are targeting enterprise apps.

For consumers facing stuff I generally use a combination of Backbone, jQuery, underscore and some other libs added in as needed. That is probably the most common stack you will see out there.


jquery.

fancy frameworks introduce complexity, bloat, bunch of magic that works behind the scenes. for small stuff you don't care about it might be nice, for anything serious i would run my own code.


That's funny, as someone who's got a ton of bloated jQuery that we've mostly migrated to Backbone, I would have argued exactly the opposite.

Our front-end guy, who is a jQuery wizard but new to Backbone, originally looked at the conversions I'd done and was quick to remark at how clean it all was.

Is there magic? Sure, but in Backbone, not that much of it. There's decidedly more in Ember, but they're both open projects so you're welcome to go scour through the magic and figure it out for yourself.

I would feel remiss if I didn't also point out that code you write in Backbone is just as much your code as code you wrote in jQuery. As for magic quotient, I would also suggest that jQuery is more magical than Backbone, on the whole. If you think otherwise, that probably just speaks to a lack of familiarity with one compared to the other.


Serious question. I haven't figured out the need for MVC in JS. I'm primarily a PHP programmer, and I use a custom MVC on the back-end. I don't see the point in having two MVC frameworks (one in front, one in back). At the end of the day, the front-end has to talk to the server to get data, doesn't it? What's the difference?


You may not, necessarily, but Javascript Frameworks 1) aren't necessarily exactly MVC anyway and 2) if you're using the MVC in both frameworks, that's sort of the wrong way to do it.

Using Django as the example (which has its own stack behind it) and Backbone as the front-end, the only part of Django I really end up using, from an end-user's perspective, is the ORM and JSON serializers.

The way that backbone works is that your 'models' don't read to or write using the database, they read and write using APIs that you define with your normal framework. So, where in Django, you might execute a .save() on a model to commit it to the database, that same .save() operation in backbone will execute a PUT or PATCH request to your API endpoint to which its bound.


angular.js

This series of quotes from a dev I work with captures a common visceral experience of working with angular.js for the first time: "I've never been so frustrated with code before" ..an hour later.. "You stare at something broken for 20mins, then the fix occurs to you and the truth of it is just so beautiful." We switched from backbone.js to angular.js about 8 months ago, and the team is generally very happy.


EmberJS: http://emberjs.com/

It's primarily author is Yehuda Katz, the man behind (much of) Rails 3


jQuery + Backbone + Marionette for rapid prototyping. I usually throw in Handlebars for templating.


Backbone.js


jquery, jquery mobile only for the page/events system, not the ui


SilkJS and Enyo


Angular.js


knockout.js

require.js

durandal.js


How do you find Durandal? It looks pretty much exactly what we want




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

Search: