10 Million DOT for a Decentralized JAM

The Web3 Foundation is supporting implementations of the future of Polkadot with a total prize pool of 10 million DOT and 100,000 KSM.

About

What is JAM?
JAM is the Join-Accumulate Machine, a new protocol designed to succeed the Polkadot relay chain. It provides significantly enhanced smart contract functionality. Learn more
Competition Goals
The
Web3 Foundation
is supporting the development of JAM client implementations to improve the decentralization and resilience of the protocol.
Judging Process
Members of the
Polkadot Fellowship
will judge submissions. The Web3 Foundation will coordinate its actions based on the decision of the Fellowship.

The Path To Implementation

Each number below represents a milestone.

  • 1
    IMPORTER:
    State-transitioning conformance tests pass and can import blocks.

    Potential benefits

    Consideration for Fellowship rank retention or promotion

  • 2
    AUTHOR:
    Fully conformant and can produce blocks (including networking, off-chain).

    Potential benefits

    Private access to standard hardware for performance testing

  • 3
    HALF-SPEED:
    Conformance and Kusama-level performance (including PVM implementation).

    Potential benefits

    Access to JAM TOASTER for trial and debugging

  • 4
    FULL-SPEED:
    Conformance and Polkadot-level performance (including PVM implementation).

    Potential benefits

    Free professional external audit

  • 5
    SECURE:
    Fully audited.

    Potential benefits

    Users will have greater confidence in your implementation

Please carefully review the full rules for submissions

Language Sets

A: "Cooperate Code"

Maximum prize per milestone: 100,000 DOT + 1,000 KSM

Java, AspectJ, Kotlin, C#, Go

B: "Quick Code"

Maximum prize per milestone: 100,000 DOT + 1,000 KSM

C, C++, D, Rust, Swift, Zig, Carbon, Fortran

C: "Cute Code"

Maximum prize per milestone: 100,000 DOT + 1,000 KSM

Scheme, Common Lisp, Prolog, Haskell, ML, Perl, Python, Ruby, JS, Groovy, Dart

D: "Correct Code"

Maximum prize per milestone: 100,000 DOT + 1,000 KSM

Ada, Julia, Erlang, Elixir, Ocaml, Smalltalk, F#, Scala, APL

Z: "Mad"

Maximum prize per milestone: 5,000 KSM

Brainfuck, Whitespace, Redstone

Our Advice For Teams

The more milestones your team completes, the more competitive your submission will be. If you are unsure where to start, we recommend that teams begin in order:

  • 1. Block/header data structures and serialization
  • 2. State data structures and serialization
  • 3. In-memory DB and Merklization
  • 4. Non-PVM block execution/state-transition
  • 5. PVM instancing, execution and host-functions
  • 6. Block-import tests