Web3 Foundation Grants — Wave 3 Recipients

Web3 Foundation Team
Web3 Foundation
Published in
5 min readAug 17, 2019


First and foremost: the grants program is still available! We are actively accepting applications on a rolling basis. The grants program will be around for all of 2019 and most likely continue through 2020. Once Polkadot has launched, it will still be important to assist in funding teams to get their projects started within our ecosystem.

Astute observers may have noticed that the previous two wave blogs had a regular cadence. We had a plan to announce teams at the end of every quarter. With DotCon and the Web 3 Summit just around the corner, we wanted to announce the latest winners just in time.

If you are interested in applying for a Web3 Foundation grant then you will be happy to know that more funding is available, so we kindly welcome more teams to apply and tell us about their ideas. Details of how to apply can be found on our grants page.

Winners from the previous waves can be seen in the corresponding blogs: Wave One and Wave Two


Within each wave of teams there tends to be themes that link the different teams together. This is generally by accident than design. We notice that some teams submit an idea after seeing a similar idea appear in a pull request on our grants repo. This time round, it seems that the strongest themes are ‘security’ and ‘identity’.

Future Grants

We intend to continue awarding grants until the end of this year and probably into 2020, so it’s never too late to apply! Take a look at our areas of interest to get a general idea of what we are interested in funding. Below, we outline some of the more high-priority projects we are looking to support.

The design and implementation of bridges to all major blockchains is one of our highest priorities. Please check out our newly-released RFP in this area.

Currently, the only way to generate a Polkadot Runtime is by using Rust along with Parity-built tools. We would like to increase the language options for developers to write these Runtimes and recently released an RFP for the development of a tool to generate WebAssembly Runtimes from AssemblyScript.

Other developer tooling that’s important includes tools for improved or simplified parachain development, editor or IDE integration and mobile libraries.

Tools which improve the security and usability of nodes are also a priority. This includes projects such as compatible hardware security modules, node monitoring services, and validator setup tools.

Lastly, we would love to get proposals for the development of stable coins, as well as, new types of blockchains that can act as parachains. Of course, these are just some selected ideas, not an exhaustive list. If you would like to work on another interesting project, feel free to apply!

How to Deliver Milestones

In our previous blog, Wave 2, we gave an overview of our main criteria for grants plus we gave an idea of how to structure a roadmap. That is the best advice we can give to new teams.

After the roadmap, the next most important aspect of the program is the delivery of milestones. We do ask teams to give us a good indication of how to test their software when they write their roadmap, but how to deliver the milestones requires some more exploration.

A quick checklist:

  1. Check that all items listed in the roadmap are being delivered.
  2. Ensure that the code compiles and runs without any errors. Please also let us know which operating system, compiler version, and anything else we would need to ensure that the code compiles and runs.
  3. Have a full set of idiot-proof instructions for compiling and running the code, as well as walkthroughs of various functionality.
  4. Including a docker container makes running the code far easier!
  5. We have around 40 grant teams now. Many teams have completely independent dependencies, which increases the amount of software to install, and in quite a few cases the dependencies are conflicting!
  6. Please include all necessary documentation.
  7. We like to see diagrams too! (e.g. an overview of your architecture or how the protocol works step-by-step helps to improve our understanding of your project).
  8. We like to test each component (unit testing) but also need to make sure the code behaves as specified in the contract (functional testing).
  9. Ultimately, we need to be convinced that your code works. If we receive a bunch of binaries (essentially just blackboxes) that print out “success”, then we have no idea if your deliverable actually works.

Example of a good milestone delivery

Let’s provide an example! The team Supercomputing Systems have worked on integrating Substrate with SGX. The project has a fairly complex architecture; however, they have one of the best write ups of any grants team. Moreover, the explanations of their deliverables are public.

  • SCS Milestone 1 instructions — They included a docker container, plus a full set of instructions to take us through their project step-by-step to see how things work.
  • Milestone 1 code explanation — This is one of the most thorough explanations we have received. SCS stepped us through the main functionality of their code.

Get in touch

Should you have any questions about the grants process, then feel free to reach out: grants@web3.foundation

We also have Riot channels for real-time discussions on Web3 and Polkadot:



Web3 Foundation Team
Web3 Foundation

Web3 Foundation is building an internet where users are in control of their own data, identity and destiny. Our primary project is @polkadotnetwork.