js-ipfs 0.35.0 released

by Alan Shaw on 2019-04-12

Small, acyclic and flexible, just the way you like it

🔦 Highlights

✂️ Huge bundle size cuts!

One of the biggest goals for JS IPFS is to enable the distributed web in the browser. Part of that is being a good web citizen and minimising the amount of code we ship, to ensure IPFS downloads quicker, npm install’s quicker, loads quicker and utilizes fewer resources. It’s especially important on resource constrained mobiles and IoT devices.

The good news you want to hear is that we’ve now chopped around 50% off the bundle size of JS IPFS since 0.33, that’s a reduction of nearly half of the code we were previously shipping! This is an amazing improvement and a great reason to upgrade.


The HTTP API now has endpoints for DAG operations like get, put and resolve. Hooray! It was actually super easy so we just decided to do it spontaneously. I know, we’re so zany.

On a more serious note, this brings JS IPFS another step closer to feature parity with Go IPFS. We’re pushing forwards with this in every release 🚀 - stay tuned!

🙉 Multiple address listening for API and Gateway servers

The HTTP API and the HTTP Gateway started by your IPFS node can now listen on multiple addresses. It’s a backward compatible change, all you have to do is change the value of Addresses.API or Addresses.Gateway in your JSON config file to be an array of multiaddrs instead of a single string multiaddr. Here’s an example:

  "Addresses": {
    "API": [
    "Gateway": [

DNS link TXT records like dnslink=/ipns/domain.com can now be recursively resolved until they hit an IPFS hash like /ipfs/QmHash. Even better, that’s the new default. 👌

🏗 API Changes

❤️ Huge thank you to everyone that made this release possible

In alphabetical order, here are all the humans that contributed to the release:

🙌🏽 Want to contribute?

Would you like to contribute to the IPFS project and don’t know how? Well, there are a few places you can get started:

⁉️ Do you have questions?

The best place to ask your questions about IPFS, how it works and what you can do with it is at discuss.ipfs.io. We are also available at the #ipfs channel on Freenode.