Open-source money for open-source code

Open-source money for open-source code

Developers are able to receive funding for npm packages by adding a funding property to their code packages. In an attempt to support the open source community PkgZap allows developers to earn and contribute back by boosting all code dependencies at once thanks to bitcoin as programmable money.

Funding open source code is challenging

Software developers have built the internet and shaped the world we live in today by sharing their code with their community voluntarily and without charge. This ecosystem created giants like Amazon, Apple, Facebook, Google or Microsoft and many other software companies.

Over the past couple of years, we’ve observed a number of models emerging that tried to establish a way of contributing back to the ones who are generously helping to build the internet with their software such as OpenCollective or GitHub Sponsors. But given the extensive and complex network of software packages, funding high-visibility projects is not sufficient, if their dependencies are also not supported.

That’s why developers are able to receive funding for npm packages by adding a funding property to their code packages. This creates visibility to npm users on what dependencies are actively looking for funding.

What about npm fund

Running npm fund lists all dependencies that are looking for funding specifying the type of funding and the URL to visit. However this has several limitations:
First developers need to create their own website and integrate a payment service provider or link directly to a third party platform to accept contributions. In any case code publishers are limited to the offered currencies and depend on 3rd parties to receive payments.

Second software projects can consist of dozens of dependencies, trying to donate to all of them takes a considerable amount of time and is financially not feasible for small amounts.

PkgZap automates npm fund

PkgZap, a showcase built by Alby, allows developers to contribute back to all code dependencies by zapping all at once thanks to bitcoin as programmable money.

PkgZap leverages the bitcoin lightning network to offer direct contributions of any amount. Payments happen instantly and automatically split across all dependencies. This drastically lowers the barriers for project owners to give value back for the value that they receive also known as Value4Value.

As a package developer

You only have to add a lightning address to your package.json file.

Have a look at this example

{
    ...
    "funding": {
    	"type": "lightning",
    	"url": "lightning:hello@getalby.com"
    },
    ...
}

~/package.json

Create an Alby account to get a lightning address or choose one from these providers.

As a project developer

  1. Run the npx @getalby/pkgzap-cli command in your project directory. It fetches the funding information from the package details by analysing the dependencies.
  2. Enter your desired total amount you want to split among all supported dependencies.
  3. Approve the wallet connection and you're done! 🚀

Have a look at this short demo:

Let the sats flow and support your favourite open source projects!

Try it now

If you know a npm package with a lightning address or you want to try it with the @getalby/pkgzap package yourself, scroll to the end of pkgzap.albylabs.com and enter the package name. Don’t forget to install the Alby Browser Extension or another WebLN enabled wallet to zap it.

If you have ideas on how to improve the experience for package and project developers or if you have questions about how to power your software package with programmable money, reach out.