Canonical superset of DAOIP-5 · schema.org/Grant · CC0

The open index of web3
funding opportunities.

A canonical RFP object format, a public GraphQL API, signed operation-log provenance, and governance-as-document review. Built on Powerhouse. CC0 schema. AGPL-3.0 code. Shipped as public-goods infrastructure.

Grants indexed
Currently open
Funders
Last updated

Latest RFPs

Grant pools from your connected Switchboard — no placeholder data. Start the RFP Hub switchboard to see what's in the live reactor.

Loading…

How it works

Six pieces, one hub. Every hard requirement in the Ethereum Foundation's RFP Hub brief maps directly to Powerhouse infrastructure already running in production.

Standard RFP object

A canonical superset of DAOstar DAOIP-5 GrantPool and schema.org/MonetaryGrant, with the process fields RFPs actually need — submitter, verification state, dispute handling. JSON-LD projections are emitted in parallel.

Five export surfaces

Public GraphQL API with search/filter/pagination. Nightly checksummed JSON snapshots. RSS + Atom feeds. Webhooks with retry and dead-letter. Content-addressed mirrors on IPFS + Swarm.

Signed, three-layer dedup

Every operation is Renown-signed and appended to a replayable log. Duplicates are rejected at three layers: deterministic operation IDs, executor idempotency, and domain-key (funder + title, canonical URL) fingerprints.

Governance as document

The publisher allowlist, dispute queue, and schema-evolution RFC process live inside their own Document Model. Policy changes leave the same audit trail as data changes.

CC0 schema, AGPL code

The object format is dedicated to the public domain so any aggregator, competing registry, or traditional funder can adopt it without licensing friction. The reference implementation is strong-copyleft AGPL-3.0.

Federation-ready

Every operator runs the same schema. A single aggregator can consume N RFP Hub instances. Non-Ethereum funders ingest without schema change. Pilot scope is Ethereum; architectural scope is broader.

One contract, five surfaces

Every RFP Hub operator exposes the same schema across GraphQL, snapshot downloads, feeds, webhooks, and content-addressed mirrors. Pick whichever shape your aggregator wants.

# GraphQL — live, filtered, paginated
query OpenRFPs {
  rfps(filter: { status: OPEN }, pagination: { limit: 10 }) {
    items {
      id slug title funder
      categories deadline fundingAmount
      provenance { verificationStatus sourceHash }
    }
    nextCursor
    total
  }
}

# OR pull the full dataset
curl https://rfp-hub.example/snapshots/latest.json
curl https://rfp-hub.example/rss.xml
curl https://rfp-hub.example/rfps/<id>/daoip-5.jsonld
curl https://rfp-hub.example/rfps/<id>/schema-org.jsonld