Skip to content

Latest commit

 

History

History
263 lines (177 loc) · 22.3 KB

README.md

File metadata and controls

263 lines (177 loc) · 22.3 KB

Web3 Foundation Grants Program

👋 Introduction

As part of our commitment to promoting the Web3 ecosystem, we offer comprehensive grants programs focused on funding software development and research efforts related to Polkadot, Kusama and Substrate. For more information about the Web3 Foundation, please visit the About page on our website.

Guidelines

Anyone is welcome to apply for a grant. Projects funded through our programs are broad in scope, but our focus lies on strong technical projects that add value to the ecosystem.

Generally, your project will have better chances to be accepted if:

  • It presents a well-researched or tested concept, for which ideally you are able to show some prior work.
  • You can demonstrate that the project will be maintained after completion of the grant, be it through an obvious commitment to the technology from your side, additional funding sources or an existing business model.
  • Your team has proven experience with the relevant languages and technologies and/or a strong technical background. You will be asked to provide the GitHub profiles of your team members as part of your application, which we will examine these for past activity and code quality. Naturally, you can also link to projects on other platforms.
  • Your application is rich in technical details and well-defined.
  • You can clearly present how your project stands out among competitors or implements technology that doesn't exist in the ecosystem yet.

Additionally, it must fulfill the following requirements:

  • All code produced as part of a grant must be open-sourced, and it must also not rely on closed-source software for full functionality. We prefer Apache 2.0, but GPLv3, MIT or Unlicense are also acceptable.
  • We do not award grants for projects that have been the object of a successful token sale.
  • As a general rule, teams are asked to finish a grant before applying for another one.
  • Lastly, we do not fund projects that actively encourage gambling, illicit trade, money laundering or criminal activities in general.

In addition to the information provided on your application, note that your project will need to comply with our Guidelines for Milestone Deliverables. In particular, we require all projects to create documentation that explains how their project works. At a minimum, written documentation is required for funding. Tutorials or videos are also helpful for new users to understand how to use your product.

Please also heed our Announcement Guidelines for grant-related communications.

Finally, we take licensing and the right of all teams in and outside the ecosystem to be recognised for their work very seriously. Using others' work with no attribution or indication that this was not your own work as part of a milestone delivery will lead to immediate termination. Please reach out to us before submitting if you have any doubts on how to comply with a specific license and we'll be happy to help.

We also try to enforce our code of conduct and based on this may block users.

Project ideas

An overview of existing projects in the Web 3.0 Technology Stack along with broad project ideas we would potentially be interested in funding can be found here, as well as a list of previously accepted applications here.

Requests For Proposals (RFPs) represent concrete ideas for projects that we would like to see implemented. Several teams may apply for the same RFP, so even if another team has already applied to implement a certain RFP, we invite you to do the same if you're interested.

Finally, you don't need to start your own project in order to be eligible for a grant. Instead, some teams choose to port existing work to Substrate, where the pertinent licenses allow, or even to contribute to an existing open-source project. In the latter case, you should check in advance that the maintainers of the project are interested in your contribution, and the acceptance of the milestones will generally be tied to the inclusion of your work in said project. See the Maintenance Grants section for more info.

If you have a good concept of the technical challenges that your idea entails and would like feedback before applying, you can send us an email and tell us about it.

Support

The scope of our Grants Programs consists of funding and feedback on delivered milestones. This means that we do not provide hands-on support as part of a grant, but if you face specific issues during development, we will do our best and try to direct you to the correct resources. If this sounds like something you would like however, you may also want to apply to Parity's Substrate Builders Program, which provides hands-on technical, ecosystem and strategical long-term support and access to extensive resources. You can find general documentation and more information on Substrate on the Substrate Developer Hub, and we encourage you to join the community in order to get help with specific issues or to stay up to date with the most recent developments.

For questions about the grants program itself, see our FAQ.

Team

W3F Grants Committee

The committee consists of individuals who know the funding priorities of the Polkadot ecosystem, and is responsible for evaluating grant applications and providing feedback on these.

In cases where a niche expert opinion is desirable, one of the committee members may request such a review.

W3F Grants Evaluators

Evaluators are individuals able to evaluate the technology delivered as a result of the Grants Program. The committee has the right to add or remove evaluators on the basis of supermajority.

W3F Operations Team

The Operations Team takes care of legal documents, invoicing and remittances.

🎚️ Levels

The W3F Grants Program offers different grant levels to help you best depending on your current stage.

🐣 Level 1 (= InstaGrants)

  • Target: Individuals & small teams
  • Amount: Up to $10,000
  • Requirements: 2 approvals
  • Benefits: Feedback during application process and evaluation, introduction to related teams/projects

🐤 Level 2

🐓 Level 3

  • Target: Companies/foundations with a proven track record
  • Amount: Unlimited
  • Requirements: Pitch call + 5 approvals (for > $100k Web3 Foundation Council approval)
  • Benefits: All of the above + VC introductions

📝 Process

📢 The process below is independent of the level. Payment is made in Bitcoin, USDT, DAI or kUSD. If you want to apply in private and/or you need to be paid out in fiat, you can apply ➡️ here. Note that this is generally a slower process and imposes stricter requirements on applicants.

1. Application

  1. Fork this repository.
  2. In the newly created fork, create a copy of the application template (applications/application-template.md). If you're using the GitHub web interface, you will need to create a new file and copy the contents of the template inside the new one. Make sure you do not modify the template file directly.
  3. Name the new file after your project: project_name.md.
  4. Fill out the template with the details of your project. The more information you provide, the faster the review. Please refer to our Grant guidelines for most popular grant categories and make sure your deliverables present a similar same level of detail. To get an idea of what a strong application looks like, you can have a look at the following examples: 1, 2, 3, 4. Naturally, if you're only applying for a smaller grant that only consists of, say, UI work, you don't need to provide as much detail.
  5. Once you're done, create a pull request. The pull request should only contain one new file—the Markdown file you created from the template.
  6. You will see a comment template that contains a checklist. You can leave it as is and tick the checkboxes once the pull request has been created. Please read through these items and check all of them.
  7. Sign off on the terms and conditions presented by the CLA assistant bot as a Contributor License Agreement. You might need to reload the pull request to see its comment.

2. Application Review

  1. The committee can (and usually does) issue comments and request changes on the pull request.
  2. Clarifications and amendments made in the comments need to be included in the application. You may address feedback by directly modifying your application and leaving a comment once you're done. Generally, if you don't reply within 2 weeks, the application will be closed due to inactivity, but you're always free to reopen it as long as it hasn't been rejected.
  3. When all requested changes are addressed and the terms and conditions have been signed, someone will mark your application as ready for review and share it internally with the rest of the committee.
  4. The application will be accepted and merged as soon as it receives the required number of approvals (see levels), or closed after two weeks of inactivity. Unless specified otherwise, the day on which it is accepted will be considered the starting date of the project, and will be used to estimate delivery dates.

3. Milestone Delivery and Payment

  1. Milestones are to be delivered on the Grant Milestone Delivery repository following the process described therein.

Changes to a Grant after Approval

  • Accepted grant applications can be amended at any time. However, this necessitates a reevaluation by the committee and the same number of approvals as an application (according to the levels). If your application has been accepted and, during development, you find that your project significantly deviates from the original specification, please open a new pull request that modifies the existing application. This also applies in case of significant delays.
  • If your delivery schedule signficantly changes, please also open a pull request with an updated timeline.
  • If your deliveries are significantly delayed and we cannot get a hold of you, we will terminate your grant (3 approvals required, regardless of level).

📬 Suggest a Project

If you think that we should support the development of certain tools or projects (related to Polkadot, Kusama or Substrate) that aren't in the Polkadot/Kusama tech stack, feel free to submit a suggestion using the process described below. We are particularly interested in supporting projects that could be leveraged by other builders in our ecosystem.

Submit an idea:

If you have an idea for a project or would like to highlight an area in which you'd like to see teams build, but lack the technical background to create a detailed outline, you're welcome to open an issue or add it to the tech stack as a potentially interesting project. We will review your suggestion and, if necessary, will create an RFP based on it and reach out to teams able to build it.

Submit an RFP (Request for Proposals):

Ideas generally have better chances of being implemented if they're presented in a project outline format that can be picked up straight away by a team, so if you have a good concept of the milestones required to bring your project to life, you can follow the process below and directly submit an RFP:

  1. Fork this repository.
  2. In the newly created fork, create a copy of the suggestion template (rfps/suggestion-template.md) inside the rfps folder. Make sure you create a new file and copy the contents of the template into the new one, and do not modify the template file directly.
  3. Name the file after your idea: project_name.md.
  4. Fill out the template with the project details. Please include as many details as possible.
  5. Once you're done, create a pull request. The pull request should only contain one new file—the Markdown file you created from the template.
  6. You will see the same template as for creating an application. Please replace it with this one.

🛠️ Maintenance Grants

Maintenance Grants are yet another idea to get involved with the Polkadot community. If you are a user of an open-source library that has gone out of date, or you simply want to work on small new features/fix bugs in these repos, we can support your contributions via a grant. We are happy to award rolling grants on a monthly basis, as long as the work done within each time period is performed to a quality standard deemed satisfactory by the grant evaluators.

The process of applying for a Maintenance Grant is similar to what was already outlined above, but instead of defining very detailed deliverables for each milestone upfront, we will ask you to specify, where possible:

  • The repo(s) that need maintenance
  • Outline of why the specific project should continue being supported
  • Broad overview of the features/bugs that need development contributions
  • An assurance that the current project owners are willing to review/accept your contributions (a note here: if you're fully taking over the project, it would make more sense for the current owners to transfer the repository to your organisation. If you can't get in touch with them, you may, of course, work on a fork)
  • Max budget per month

Then, at the end of each month, you will need to provide a comprehensive report of the work done, including the list of issues/bugs/pull requests worked on, time spent on each of these & finally the associated cost. It is quite likely that the time allocation & cost will vary from month to month, depending on the nature of the project you're contributing to. The delivery process and format should follow that of a typical milestone delivery, as will the processing of the payment.

Please note that:

  • Maintenance grants, as the name suggests, are meant to allow teams/individuals to maintain a certain project, and not to continue its development or implement larger features. Please use the traditional application process for this purpose.
  • The 1-month timeframe is just a guideline. If you find it unsuitable for you or the chosen project for any reason, feel free to adjust as seen fit and point this out in your application.
  • Please bear in mind that the Grants Committee might be stricter in accepting maintainers when compared to typical grants, mostly selecting for applicants with proven experience in the relevant tech stacks.
  • Maintenance Grants are only awarded for fixed timeframes. The requested duration needs to be specified in the application.

💡 Help

Additional information

W3F Website W3F Twitter W3F Medium Polkadot Wiki Web 3.0 Reddit W3F YouTube

Real-time conversation

We have Matrix/Element channels for real-time discussions on Web3 and Polkadot. Join the conversation.

Besides, we also have a community room for all grant recipients. Head over to that room to share your experience with other grantees, ask grants-related questions or simply hang out:

🚀 Alternative Funding Sources

Some funding sources might be more and some less suitable for your project throughout its various stages. We encourage you to explore alternative funding options listed below. Please note, however, that you should not seek to fund the same scope of work from multiple sources and that any team found doing so will have its Web3 Foundation support terminated.

Treasury

The treasury is a pot of on-chain funds collected through transaction fees, slashing, staking inefficiencies, etc. The funds held in the treasury can be spent on spending proposals. Both Polkadot and Kusama offer everyone the opportunity to apply for funding via the treasury. See:

Hackathons

From time to time, Web3 Foundation and/or Parity organise hackathons to promote quick prototyping of Polkadot related ideas. We highly encourage you to participate in these hackathons. Bear in mind, however, that you cannot submit the same work for a hackathon and the Grants Program. If you have worked or are planning to work on a project for a hackathon, your grant application should either propose a different set of features or otherwise build on top of your hackathon work. The same applies in reverse, although that will likely be less common.

The best way to find out about upcoming hackathons is by following Polkadot on the various social channels, such as Element or Twitter.

Other Grant Programs

Below is a list of other grant programs in the Polkadot/Substrate ecosystem:

ℹ️ License

Apache License 2.0 © Web3 Foundation