Even if there are already about twenty AWS libraries on NPM, this is a welcome addition. One nasty part of the Node.js ecosystem is the elevated risk that the owner of a library you depend on goes AWOL. For some reason (maybe the low barrier to publishing with github + npm) this risk is incredibly high with Node.js libraries. So it's nice to see AWS put their weight behind this.
It's also nice to see a language-specific library that doesn't layer on a bunch of opinions/abstractions on top of the underlying HTTP API. Makes it a lot easier to grok, debug, and leverage existing documentation.
If there's anyone from AWS trolling these parts...will there ever be support for Node.js in Beanstalk?
Not all the owners go AWOL, especially for pieces of code that were created for the purpose of going into production. In fact, the lack of official SDK support is the actual cause of so many alternatives. For some of us, it creates a proper foundation in the long run. For example, I don't have the actual time to implement an end-to-end SDK. But hacking some code to get the job done was possible, while others found my hacks actually useful. It isn't ideal, but the World itself is far from that.
Actually I am such an owner. I'm interested to see if the AWS SDK could be used as foundation, even though my own implementation is just a thin wrapper plus an S3 client, most of the time doing the low level plumbing (such as request signing).
there are quite a few people depending on aws-lib (https://github.com/livelycode/aws-lib). So maybe we could re-use the base of the official SDK but retaining aws-lib's API.
Overall, I'm happy to have official support from AWS. Are there any plans to support credentials via IAM roles? It looks like the two options right now are to set environment variables or read credentials from disk. I was just about to look into adding this capability to livelycode's aws-lib.
Open an issue for IAM roles in the GitHub issue tracker (http://github.com/aws/aws-sdk-js/issues). It seems like we want this, so opening an issue will give us all a better way to track the feature.
Do you accept pull requests? I've being maintaining my own node.js to AWS stuff for the last 18 months. I may know a thing, or two, about the AWS APIs.
Just because you are using an API which uses an event loop does not necessarily imply that you are personally dealing with event loops in any meaningful way.
Contrary to the belief of many, "npm" is not in fact an abbreviation for "Node Package Manager". It is a recursive bacronymic abbreviation for "npm is not an acronym".
At the moment I'm using https://github.com/appsattic/node-awssum
It's fantastic and supports a billion services already, besides providing tons of useful examples. Before the AWS SDK matures, I don't think I'll be moving away from this library (even then I'm not sure).
What I don't like in this SDK it that it has its own promise thing. I just want to be able to write in a callback style, and IF I don't want that I can easily make my own abstractions. (more about this here: https://github.com/aws/aws-sdk-js/issues/2 )
Another thing to be considered before making the "final" release would be to support more services: Route53, SNS, SES etc.
What specific kinds of examples are you looking for? If we know, we can write better guide docs. You might want to open an issue on http://github.com/aws/aws-sdk-js/issues with suggestions-- guides are hosted there right now.
I don't think you need to do that at the moment, this is just a developer preview. Just wait and see how things evolve. At the moment https://github.com/appsattic/node-awssum still seems like a much much better SDK for AWS ;)
It's also nice to see a language-specific library that doesn't layer on a bunch of opinions/abstractions on top of the underlying HTTP API. Makes it a lot easier to grok, debug, and leverage existing documentation.
If there's anyone from AWS trolling these parts...will there ever be support for Node.js in Beanstalk?