I'm not trying to be hostile, but you've got to understand that Mongo is most certainly not a joke, has lots of support, and is a very appealing option in a number of cases.
What cases do you have in mind?
I have yet to experience MongoDB in a large scale production environment and the common pitfalls often cited, but let's face it - If you're Start-Up has scalability issues, it's prob a nice problem to have.
Based on my personal observations, i suspect the lack of adoption is because founders are thinking about scale prematurely - which is rather Anti Lean Startup and Anti-Pg anyway.
https://github.com/brianc/node-postgres
EDIT:
Whoops, its clearly just a client and not an ORM. How about
https://github.com/dresende/node-orm2
instead?
Do you even know anyone that works in Javascript? I happen to like JS but pull out PHP or Python or whatever I need to get the job done when I have to. And I'm not an exception.
@cuttooth and @PommeDeTerre, since you both are pushing the "JS is a flawed language" angle, what do you find are its greatest flaws?
Just because the query language is JSON-esq and has a javascript shell, it's therefore "Javascript" and a target of derision and scorn?
You can easily find relatively mature MongoDB drivers from the start for new languages, but don't hold your breath for PostgreSQL. See Rust.
I've had some experimental code I wrote in Rust become essentially unusable after only a few months due to significant language and standard library changes. I sure hope that somebody wouldn't spend time on a PostgreSQL library for it until the language itself becomes more stable. They'd be wasting a lot of time and effort if they did try to write such a library now.
The one thing we do differently is that we're using fibers and Common Node (https://github.com/olegp/common-node), as well as Stick (https://github.com/olegp/stick) instead of Express. This lets us write complex business logic with less code and without having to worry about explicitly handling errors, since we get to use exceptions.
`mean create myapp`
I deeply encourage anyone who wants to break, replace, remove, add any part of this project to go ahead and do so! Like any recipe this is just our serving suggestion.
I'd love to see an ember fork!
Two other nice packages:
Nodemailer - for emailing - npm install nodemailer
Moment.js - for time/date formatting, and a ton more (manipulation, etc) - npm install moment
It also just informed me of the app.param api in express. I had no idea.
Their reasons were the database is easy and it "scale".
The real reason why they chose it because they think SQL is too hard. Really, they were self taught programmers that couldn't bother to learn SQL and jump straight to NoSQL hype and the fact it was "easy".