Skip to content

Add funding support & npm fund subcommand - #54

Closed
darcyclarke wants to merge 11 commits into
latestfrom
add-funding-support
Closed

Add funding support & npm fund subcommand#54
darcyclarke wants to merge 11 commits into
latestfrom
add-funding-support

Conversation

@darcyclarke

Copy link
Copy Markdown
Contributor

No description provided.

Comment thread accepted/0017-add-funding-support.md Outdated
@ruyadorno

Copy link
Copy Markdown
Contributor

thanks for documenting all that @darcyclarke 🙏

Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md Outdated

@ljharb ljharb left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall i love this direction; funding sources may stop accepting new funds over time, but are never “invalid”. (as such, it may be wise to support some way to include a funding source but also indicate that it’s expired/disabled)

This is something the support field - or lots of other tooling - can be built on top of. Potentially, GitHub could read from this field for npm packages instead of requiring a FUNDING.yml, as well.

Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md
Comment thread accepted/0017-add-funding-support.md
Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md Outdated

@isaacs isaacs left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good start. However, I think we need to focus it a bit more at this point, or risk painting ourselves into a corner.

I'd remove all the stuff about extra fields, foundations/corporations/patrons/etc., and focus on the behavior:

  1. We print a nag saying n packages want your support
  2. We open the url if you do npm fund <pkg>
  3. We print the list of urls and packages in your tree if you do npm fund
  4. We create a link on the package page on npmjs.com to the funding page

That is still a far cry from the ideal state, imo, but it's a demonstrable improvement over the current state of play (ie, postinstall that spams the terminal), and can start to encourage better behavior.

Things that are missing (and, imo, at this point really should be, until we've figured out more):

  • Show a list of who is funding this package.
  • Turn off nags for a given package if I'm funding it.
  • npm just take my money and give it to the right people, based on what packages I'm using.

Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md
Comment thread accepted/0017-add-funding-support.md
Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md
Co-Authored-By: Jordan Harband <ljharb@gmail.com>
Comment thread accepted/0017-add-funding-support.md Outdated
Comment thread accepted/0017-add-funding-support.md
@isaacs isaacs closed this in 61b966b Oct 28, 2019
@giuseppeg

giuseppeg commented Oct 31, 2019

Copy link
Copy Markdown

npm just take my money and give it to the right people, based on what packages I'm using.

@isaacs I think that if npm goes for this option the impact will be huge. Please consider an alternative to mainstream donation-based models! The community doesn't need another "sponsors" program where only webpack, Babel and Sindre Sorhus-like folks get funded because of their popularity (they deserve it but there are plenty of less known projects and folks that should get funding).

@wesleytodd

Copy link
Copy Markdown

Agreed it would be good, but much better to leverage existing platforms which are working on this. For example I think Open Collective is working on something called Back My Stack. (cc. @piamancini who was pinged when we brought this up for Express).

@brody2consult

Copy link
Copy Markdown

much better to leverage existing platforms which are working on this

My experience is that the "existing platforms" do not help all open source maintainers.

Open source sustainability seems to be a big, unsolved problem.

A big thank you to @darcyclarke, @isaacs, and many others who have been working hard on a solution that can help everyone (hopefully).

@ruyadorno

Copy link
Copy Markdown
Contributor

for everyone still following this thread, follow up PR in npm/cli is here: npm/cli#273

@isaacs

isaacs commented Oct 31, 2019

Copy link
Copy Markdown
Contributor

For what it's worth, we have been chatting with the OC folks, and intend to continue to work closely with them where it makes sense. Today a lot of people who'd use the npm fund feature are going to put open collective URLs in there, so I don't think we're working at cross purposes at all, and our intent is to stay aligned.

owlstronaut pushed a commit that referenced this pull request Jun 8, 2026
Bot-generated follow-up to the merge of
`accepted/0000-make-scripts-install-opt-in.md`.

Assigns RFC number **54**, renames the file to
`accepted/0054-make-scripts-install-opt-in.md`, fills in front-matter
(`status`, `accepted_at`, `created`), and regenerates `INDEX.md`.

Front-matter was synthesized from the file's `# Title` heading. Edit the
front-matter or the title in this PR if you need different values, then
merge.

Co-authored-by: npm CLI robot <npm-cli+bot@github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants