Opening up to open source

Our JavaScript client library is now open source. Discover why we made it open source along with the advantages to open sourcing our code.

Opening up to open source

At Duffel, we're making travel effortless. One of the ways we're doing this is by providing great developer tools, like our JavaScript client library. Sometimes known as an SDK, it makes interacting with the Duffel API from your server-side JavaScript applications easy.

Many popular software libraries and SDKs used by developers are open source, like Octokit for interacting with GitHub, React for building front-end web applications, and TensorFlow for machine learning.

Until now, our client library was closed source. This meant that anybody could access and use the library, but it wasn't possible to see the underlying source code. Today we're pleased to announce that our JavaScript client library is now fully open source.

There are several advantages to open sourcing our code, both for Duffel and our customers:

1. A better experience for our customers

Open source provides more training and help materials to our customers and continues to improve developer experience. When the codebase was closed source, our customers only had our official documentation and guides to draw from. Now they can also jump into the source code to see how things work behind the scenes.

Our customers can even get involved directly and contribute changes back to our codebase. If they find and fix a bug, or make an improvement, they can send us a pull request so that everybody can benefit from their changes.

2. Helping our peers

Duffel, like pretty much all online services, is built on open-source software. Very little of this software was created in isolation – it's the result of people extending, remixing and drawing inspiration from prior art.

By making some of our code open source, we are contributing back to this ecosystem in a small way, allowing others to kickstart their own ideas from our work.

3. Recruitment and retention

Currently, we're still a relatively small company. As we grow, we must continue to hire and develop great people. Developing in the open gives us more visibility in the engineering community, which in turn will help us attract talented people.

It also makes it easier for us to talk about what we're up to. Instead of having to take our word for it, people can check out the codebase and actually see examples of what we're talking about.

Summary

With all of the advantages it brings, making our client library open source was an easy decision to make. Take a look at the client library on NPM or GitHub, and feel free to open an issue or pull request.