My First Open Source Contribution: Node Amazon Products API


I’ve been developing for almost 20 years now, about half of that professionally. While I’ve used countless open source libraries and packages in that time, I’ve never contributed one of my own. Whether it was that I never felt up to the task or the opportunity never presented itself, it doesn’t matter - that streak is now broken.

A couple days ago, I released amz-products, an npm module that allows an easy interface to the Amazon Product Advertising API. As I’m using the API on a project with my buddy Josh, it just made sense to package up what I’d created there and release it as open source. Thanks Josh, for the pushing to get this out into the world!

So, why this particular package? Well, as the readme on the project states, I couldn’t find a good package on npm that seemed to work well for this API. Sure, there are a number of Amazon Product API packages out there, but each had weirdnesses about it. Either it had arcane authentication or other interfaces, or it only covered one or two endpoints of the API. Not satisfied with difficult-to-use or incomplete packages, I put this together to provide an easy and comprehensive solution to interacting with the Amazon Products API.

The package itself is pretty straightforward. It’s a fairly thin wrapper around the API, but helps solve issues like authentication and response formats, which are pretty horrible in the native Amazon API. I’m hoping that folks find it easy to use and a good solution for getting data from the API.

If your project needs to consume product data from Amazon, I’d suggest giving my module a look. If you have suggestions for making it better, leave them in the project issues, send me a pull request, or just leave them in the comments below!

Related Posts

Review: Keto Diet

I recently gave the Keto (Ketogenic) Diet a try. Suffice to say...it works.

You Don't Need to Get it All Correct Immediately

Too many people wait on shit to be perfect. Get it close, leave out some stuff, and set yourself up to quickly iterate.

Using Foundation 6 in Angular 4 (or 2)

How to use Foundation for Sites 6 in Angular 4 (or any version 2+)

Great Products Need Great DevOps

In the quest for shipping great products, DevOps is often overlooked, and that's a mistake

How I Increased my Water Intake by 500%

We all need to drink more water, but it's hard to get in the habit. Here's a simple trick I used to get a 5x improvement on my intake.

Three Secrets That Made Cutting The Cord Easy

After decades of being attached at the hip to cable, I finally cut the cord, and it's been amazing. Here are three secrets that helped me get the most of it.

How to Onboard a Product Designer

If you're bringing a product designer or UX designer in to help you design your product, there's a bad way to do it, and a good way to do it. Here's how to make sure you're doing it right.

Review: Slicing Pie

Slicing Pie is a new way to think about company equity splits, and it blows away the old methods you've probably used.

When Troubleshooting, Follow the Process!

When you're trying to troubleshoot something - a car that won't start, or a business that isn't working - follow the right process.

The Art of Finding a Way

Being resourceful and relentless is one of the keys to being successful (and a great shipper). When in doubt, find a way.