The StackAid beta blog post detailed the new funding model for open source. With a new approach, the onus is on us to show the model is workable.
Spoiler Alert: it works! Small monthly subscriptions from the developer community spreads the financial support broadly amongst a large number of projects in a meaningful way -- see the analysis in the beta blog post. Let's look a bit further at the motivation for the simulation and how to explore it.
The first step was the "analyze tool" on the homepage that takes
package.json and a subscription amount, and returns the allocation for your set of
To answer the burning question of how StackAid allocates money as it scales we needed a way to either estimate the relative frequency of dependencies or simulate hundreds or thousands of users.
We settled on creating a public simulation to exercise the platform and allow a demonstration of how StackAid it works in aggregate, per project, and per subscriber.
The simulation environment contains five thousand users subscribed to StackAid for a year, with each subscriber using a real package.json discovered for projects on GitHub. Each subscriber pays between $15 and $100 per month based on the recommended monthly amount. When subscribing, the recommended amount derives from the number of dependencies you have.
The subscription fee chosen is based on the following choices on the subscription page. Here's the subscription page for my personal GitHub organization:
Like on our production site, the StackAid simulation environment contains:
- A top projects and supporters page.
- Pages for each funded project.
- Pages for each supporter.
Disclaimer!While looking at the simulation, it's important to remember that by simulation we mean the amounts aren't real! But just to make sure we added the top blue banner to remind you that you're in a simulation.
Top Project and Supporters
The simulation contains a leaderboard just like the StackAid leaderboard.
The top projects page below shows which projects get the most funding based on the dependencies from our fake users. The top 10 aren't surprising, but it's still fascinating to see how the top projects stack up against one another.
The top supporters page shows our simulation subscribers and their total funding of open source projects. However, the dependencies come from a package.json found in one of their public repositories.
When you select one of the projects, such as Kent Dodd's cross-env, on the top projects page, you'll see the project page for the repository with three sections:
- Funded by
- Shared with
The "Supporters" section are StackAid subscribers who have cross-env as a direct dependency.
The "Funded by" section are projects that share money with cross-env. All the "Funded by" projects have cross-env either as a dependency or a dev dependency.
Lastly, the "Shared with" section has the list of projects that cross-env shares funds with since these projects are cross-env dependencies.
While looking at the cross-env page, it's hard not to notice the top supporter. The link takes you to the profile page where you can see all the projects benefiting from Jan's support.
Profile pages can contain much more if the account or organization has projects being funded by StackAid. Sindre Sorhus' profile page is a great example. In our simulation, Sindre is both a supporter via a subscription but also has many projects for which he receives funding via StackAid.
When you're receiving funding from StackAid for your repos, your profile page contains the same sections as the project page but aggregated across your projects.
Note: For the astute reader who wonders why Sindre received $39,874 but the "Funded by" section says $22,509, the difference between the amounts is what Sindre's projects receive as direct dependencies, and the $22,509 is what they receive as indirect dependencies.
Back to now
Hopefully the simulation is as interesting and useful to you as it is to us. We have more to share about the simulation, and will continue to improve upon it as we continue to improve StackAid.
And while we're looking forward to the day when we hit 5,000 subscribers, we hope StackAid is destined to have an even bigger impact in funding open source.
If you have feedback or questions, please reach out to us. If you're interested in joining the beta, we'd love to have you on the invite list.