Ask HN: What are you using as an Angular backend?

12 points by groundCode ↗ HN
Interested in what people who are doing medium to large-ish Angular apps are using on their server side? I'm about to embark on a medium sized project and making the it seems like using Rails or Django (the two frameworks I'm most familiar with) are a bit of an overkill given I don't actually need all the routing/templating/viewing gumph that is built in. What do you find is working well for you?

18 comments

[ 3.6 ms ] story [ 46.7 ms ] thread
Hey, NodeJS with MongoDB are a combokill combination.
I use Scala, Play, Postgres for backend API. I started with checking Flask and learning Rails, but then I just switched back to the stack I am comfortable with as I don't want to learn both new backend and frontend (Angular.js) stuff on the project and focus on delivering. Frontend and backend code are kept separately for now and I use Yeomen for assisting frontend development and it works fine.

If you go with Rails you can strip it down and check http://api.rubyonrails.org/ for APIs. There's similar project for APIs in Django.

haven't actually used the rails api - I'll take a look cheers.
NodeJS + Express.

I've had some good mileage out of SailsJS ( http://sailsjs.com/ ) recently, essentially it is a NodeJS + Express stack with Socket.io and prebuilt ORM/blueprints. Up and running in a matter of minutes and behind the scenes it is still just NodeJS/Express

great - not seen sailjs before - I'll give it a look see - thanks.
Firebase added bindings for Angular a few months ago.
great reminder - I tinkered with firebase a bit a while ago - I'm not sure about the security implications of it though - it seems like (though I haven't actually tried) that anyone could grab your firebase url and start randomly writing objects to it. I know they have some authentication, but I haven't looked too closely into it yet - thanks for the reminder.
I'm using Sinatra - little overhead, simple code. I used node.js/express.js in the past, but the callback hell made me dislike it a bit, although admittedly I'm not experienced with node, so there might be a way to avoid that.

I had a look at Firebase and my main problem with it is having to rely on 3rd party service and storing data on their servers + portability if I was to decide to leave them in the future.

I use Django and Tastypie. If you don't need Django's routing, templating, views, etc. then don't use them! Code that is never run doesn't cost you anything.

Tastypie lets you build APIs quickly, and the Django admin lets you browse your data without having to write any code at all. For the kinds of apps I build, things can't get easier than this. YMMV, of course.

Have you looked at django-rest-framework? As somebody who has contributed to tastypie, I feel that django-rest-framework is more django-like.
It's on my TODO list of things to try out.

I have had some minor issues with Tastypie, but my current project is too far along at the moment to switch to another framework.

I am using Flask(Python) with PostgreSQL DB for my recent project
I am going to be using Go and Mongo.
I'm using Flask with Flask-Restless for an API.
Tornado when using Python. SpringMVC/Jetty when using Java.
We're switching to it on an existing project so the back-end will continue to be Java with Spring.
Clojure + Ring/Compojure + MongoDB (super terse code, easy to test)