Skip to content

doc: first cut at sponsor agreements, and sponsor page documentation #955

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from

Conversation

mhdawson
Copy link
Member

@mhdawson mhdawson commented Mar 5, 2025

No description provided.

jasnell
jasnell previously approved these changes Mar 5, 2025
@mhdawson
Copy link
Member Author

mhdawson commented Mar 5, 2025

@ovflowd I think this captures what we talked about today.

I think it captures an attempt at the process we'd need for the logos as well as what will go on the main nodejs.org landing page and the sponsor page without the logos.

I think it might be useful to add the sponsor page and links in the main landing page, even without sponsors (something like I have with the ? or this could be you. We can then fill it in as sponsors complete the required agreements.

@jasnell jasnell dismissed their stale review March 6, 2025 21:02

Actually, I need to review the background on this a bit more

Copy link
Member

@jasnell jasnell left a comment

Choose a reason for hiding this comment

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

Marking this as changes requested because I know I need to review this a bit more and I think there may be some conflicts in this approach with what the Foundation needs to do. Need to research a bit more

@mhdawson
Copy link
Member Author

mhdawson commented Mar 6, 2025

I should have mentioned that I've already looped in @bensternthal to suggest changes to bring the process into line with the experience from the foundation.

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

Adding a soft block here, as there are a few aspects of this I need to investigate with the board. I’ll get back with a longer explanation.

@mhdawson
Copy link
Member Author

mhdawson commented Mar 7, 2025

I was informed today that the project is not allowed to raise funding in this way based on this wording in https://openjsf.org/projects.

Project Funding Opportunities
All funding received through OpenJS Foundation membership dues is used to support various programs that benefit our hosted projects, and to run the Foundation. This funding is administered by the Board of Directors, which is comprised of elected community leaders and member company representatives.

The OpenJS Foundation recognizes that in addition to supporting the general activities of the OpenJS Foundation (through membership, event sponsorship, and certification), some organizations may wish to contribute additional monetary funding to the OpenJS Foundation for activities that benefit specific projects or initiatives.

OpenJS Foundation members who are current on their annual dues may contribute additional amounts of incremental monetary funding to specific OpenJS Foundation initiatives, such as roadshows, Cross Project Council activities, or project infrastructure. Directed monetary funding activities must be approved by the OpenJS Executive Director, and are subject to the following annual limits:

Platinum members: No cap on directed monetary funding
Gold members: Capped at 50% of annual dues amount
Silver members: Capped at 25% of annual dues amount

The Board of Directors may approve exceptions on a case-by-case basis.

Please note that these limits only apply to incremental monetary funding contributed directly to the OpenJS Foundation.  Aside from OpenJS Foundation membership and the incremental monetary funding described above, we strongly encourage organizations to invest in the health and sustainability of the community at large by employing contributors, encouraging and supporting employees as they grow into leadership roles, running local meetups, and open sourcing their projects.

I am surprised since I did my best to share the approach and goals along the way in the collaborator summit and in documentation Nodejs-Funding-Sources.md
and had thought that the help from the Foundation in setting up GitHub sponsors and Open Collective meant it was a reasonable direction but that was obviously not the case.

It sounds like the issue will be taken to the board for discussion on March 17th and we may get some alternate suggestions.

@ljharb
Copy link
Member

ljharb commented Mar 7, 2025

I'm confused; none of the quoted wording talks about anything except dues and directed contribution limits through the Foundation - is there a different clause that suggests that funding from non-member sources isn't allowed?

@mhdawson
Copy link
Member Author

mhdawson commented Mar 7, 2025

@ljharb no there is no other clause and it is the one I was quoted. I asked the same question but was told my interpretation was incorrect and that the clause applies in a way that prevents us from doing what's outlined.

@ljharb
Copy link
Member

ljharb commented Mar 7, 2025

That wording then is wildly insufficient (and either way, it's just a random page, it's not like a charter or TOS or anything) so if that's actually the case it needs better documentation.

@mcollina
Copy link
Member

mcollina commented Mar 9, 2025

I'm on this. I'll try to find some strategy that makes sense for the project.

I'm personally not aware of that direct funding ever be used, so maybe we can publicize that.

@ovflowd
Copy link
Member

ovflowd commented Mar 9, 2025

FYI that projects like Webpack and ESlint heavily depend on the ability of self funding to run and manage their operations -- including, somewhat, day to day maintenance.

@Balmasexy
Copy link

Marged together setup dashboard

mhdawson and others added 4 commits March 18, 2025 15:14
Co-authored-by: Antoine du Hamel <[email protected]>
Co-authored-by: Antoine du Hamel <[email protected]>
Co-authored-by: Antoine du Hamel <[email protected]>
Co-authored-by: Antoine du Hamel <[email protected]>
@RafaelGSS
Copy link
Member

Removed from the agenda as some iterations are needed at the board level.

@RaisinTen
Copy link
Member

Has the Foundation provided any explanation for why this is not allowed? Has there been any progress on this? It seems to be blocked with no actionable feedback or progress for nearly 4 months.

@jasnell
Copy link
Member

jasnell commented Jun 26, 2025

The short answer is that the project is simply not allowed to pursue it's own financial sponsor agreements independent of the Foundation... this is not an arbitrary restriction and is not a restriction placed on us by the Foundation. US tax law (applicable because the Foundation is registered as a 501c6 within the US... but most other countries have similar laws) strictly regulates how certain kinds of non-profit organizations raise money and have some fairly strict requirements around it all, particularly around reporting and many forms of solicitation. The approach proposed by this PR is likely in violation of those regulations. Much of this quite simply is not up for debate.

It is fine if we want to have a page about non-monetary contributions -- that's really just a matter of our continued efforts to grow out contributor base. It's also fine for us to encourage companies to donate physical resources (build machines, etc) as we've done in the past with benchmark machines and asking Arm to provide Surface ProX machines so we could test on Windows-for-ARM, etc, but specifically asking for financial contributions independent of the Foundation is not permitted.

Overall, I would say that the proposal discussed in this PR is generally a non-starter unless it is administered specifically by the Foundation and we should likely just close this. Instead we should continue to work with the foundation (rather than trying to work around them / bypass them). Anything that we possibly do pursue here will need to be done in close partnership with the Foundation board and legal team.

Obviously, individuals are free to seek sponsorship on their own but there's nothing in this PR that I see as being actually possible for us to do.

Let's close this PR and move on.

@ovflowd
Copy link
Member

ovflowd commented Jun 26, 2025

OOC - How so many projects have their own OpenCollective and GitHub Sponsors... Is that allowed for the Node project to have? I saw we launched an OpenCollective but we haven't been promoting it at all.

I also remember we wanted to design a Sponsors page on Node.js's website to at the very least highlight the current sponsors and what they've been doing?

@jasnell
Copy link
Member

jasnell commented Jun 26, 2025

Most other open source projects are not officially registered as legal non-profit organizations. These regulations apply equally to all Linux Foundation projects. We must work with the Foundation to find an appropriate path forward here.

The key restrictions really apply to how donations are solicited, how they are reported, and how they are used. Unless y'all are interested in becoming experts in US tax law, I strongly suggest that we allow the Foundation to continue to take the lead on these efforts as they specifically employ such experts.

@ovflowd
Copy link
Member

ovflowd commented Jun 26, 2025

To make it clear, I'm not questioning that we should work with the Foundation.

@RaisinTen
Copy link
Member

This PR has 2 parts:

  1. Recognizing non-monetary contributors - This part has no problems, so the categories that are for people time and the one you mentioned about donating hardware is okay to pursue.
  2. Recognizing monetary contributors - The concern here is about pursuing the financial sponsor agreements independent of the Foundation.
    • The proposal talks about accepting the funds through GitHub Sponsors, Open Collective, directed contribution via Foundation membership and ESP, which have already been approved and are already in use. The contributions are already happening but there is no recognition from the project. This proposal tries to recognize those contributors.
    • Regarding the financial sponsor agreements, no one here is against collaborating with the Foundation in morphing the proposed agreements into something that we can use legally. It would be better if the Foundation told us what can work instead of just saying no. @mcollina was trying to find a strategy that might work but I don't know if he was able to make progress.

cc @nodejs/tsc for visibility

@ovflowd
Copy link
Member

ovflowd commented Jun 27, 2025

What I find trouble to understand is "Why we cannot have a page called /about/sponsors" on the website that pretty much lists all the current partners / sponsors that are providing resources to the project? I don't understand how that is a 👎 (my understanding is that there's no issue at all on doing so); So maybe we're talking about completely different things.

@ljharb
Copy link
Member

ljharb commented Jun 27, 2025

@ovflowd that seems like something that'd be fine, but that's not what's being asked in my understanding - the ask is a place to list individual project members such that they can receive sponsorships from third parties, not to list people that are sponsoring node.

@ovflowd
Copy link
Member

ovflowd commented Jun 27, 2025

@ovflowd that seems like something that'd be fine, but that's not what's being asked in my understanding - the ask is a place to list individual project members such that they can receive sponsorships from third parties, not to list people that are sponsoring node.

I mean the initial work @mhdawson and me have been doing has multiple layers. I understand some of them will be a no-go; But I'd like to have the @nodejs/tsc chiming-in so I can understand what's OK to proceed and what's not.

@jasnell
Copy link
Member

jasnell commented Jun 27, 2025

@ovflowd ... The issue is that this PR is specifically the project soliciting donations in exchange for certain promised benefits. That's what is inappropriate. The following is all based on my understanding as both a TSC member and prior Node.js Board member:

Notice how in the main repo readme we recently allowed individual contributors to add links to their own personal sponsor pages. That's perfectly fine because it's not the project soliciting sponsorship agreements and promising benefits in return. It doesn't matter if the benefit is "only" listing them on a webpage. Any promised benefits, no matter how big or small counts the same here.

Listing existing sponsors is ok so long as it is done under the guidance and agreement of both the Foundation and the sponsor. An example of this is the agreement between the Foundation and Cloudflare to provide infrastructure for all OpenJS projects.

Accordingly, our structure is such that only the Foundation can enter into signed contracts, and only with board approval (since the board holds the fiduciary responsibility). This PR adds what amounts to signed contracts that the Foundation board has not agreed to. It's no different than the reality that every company in the world limits who in the company is allowed to sign legal contracts on behalf of the company.

Now, one can try to argue that the agreements this PR is trying to add aren't "signed contracts" but they would still be binding as such in most jurisdictions, especially at the point where money is exchanged. Even a small breach of such agreements on the part of the project could incur legal risk. And again, it does not matter that the promised benefits are "just" being listed on a webpage.

One could also argue that other OSS projects do it, why is it ok for them and not us? Most other OSS projects are not backed by the Linux Foundation with member organizations that provide millions of dollars in funding. If an individual breaks an agreement, there's not really much risk involved because it's unlikely the sponsor will ever pursue any action. That risk significantly increases when you're looking at something like the OpenJS and Linux Foundations.

Another example. In some states in the United States, and likely elsewhere, tax-exempt non-profit organizations like the Foundation are actually forbidden from soliciting donations unless certain legal requirements are met. For instance, some require the non-profit to hold a certain amount of funds escrowed in a certain kind of trust to cover liabilities.

The other part here is that there's just no reason at all for us not to be relying on, and following the lead of the Foundation on all of this. It shouldn't be up to you and Michael to work these things up when we have literal fundraising experts available and extremely willing to help. What Michael can do as the TSC chair and project CPC representative, assuming he has the support of the TSC to do so, is present this proposal to the Foundation, asking them to administer it if they approved. Had that been the course taken here the conversation probably/likely would have gone much differently. But that's just an assumption on my part.

I hope that helps clarify things. I will say that I'm not a legal expert in this area so my apologies if any details are a bit off. All of my understanding on this is based on discussions/consultation with a corporate tax lawyer a decade ago when I joined the Node.js Foundation board. Details may be fuzzy.

@jasnell
Copy link
Member

jasnell commented Jun 27, 2025

Given where things are at on this issue, I'm going to go ahead and close it.

@jasnell jasnell closed this Jun 27, 2025
@jasnell
Copy link
Member

jasnell commented Jun 28, 2025

Late thought after closing: if anyone wanted to reframe this into a proposal asking the TSC to authorize the TSC chair or board representative to bring this draft proposal to the CPC and hopefully onward to the Board, then I'd happily +1 that proposal.

@ovflowd
Copy link
Member

ovflowd commented Jun 28, 2025

I appreciate the context here. I'm going to open an issue on nodejs/nodejs.org for an added supporters page (sponsors) whose respects the current bindings and official partners that the project and the Foundation have.

This is mostly meant to highlight the current partners/sponsors and the support they've been providing and how said support has been able to help the project in different maners (CI, Infrastructure, Hardware, etc)

On another topic, @mhdawson I do believe the current Ecosystem Sustainability Program might be what we were looking for to get partners that support Node' so we can focus on critical work (besides of security). @nodejs/tsc is this in the interest of the TSC? I do believe there's value for getting funding for the Node project that allows us to sponsor criticial work that needs to be done (specific features, PR, releases, CI, etc) -- And if the ESP is that program, then we definitely should focus on the development of the ESP page on Node.js so we can better highlight and direct potential partners into the ESP.

@aduh95
Copy link
Contributor

aduh95 commented Jun 28, 2025

is this in the interest of the TSC?

It is not unless consensus can't be reached – it might very well pique the interest of some TSC members though, so thanks for the ping ;)

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