Skip to content

Registry Overview ​

The Registry is the public platform that turns the on-chain RIK protocol into something humans can browse, search, and react to. It is structured as a small monorepo of focused apps.

Source: freecodexyz/registry.

Structure ​

The runtime layout is intentionally simple:

Base Sepolia RPC ─► api (indexer)  ──► SQLite
                              ▲
                              │
GitHub REST API ──────────────┘  (metadata enrichment)
                              │
api (server)  ◄────────────────  reads SQLite, serves JSON + SSE
   ▲
   │
   ▼
web (React)  ◄────► wallet (SIWE) ◄────► api (auth endpoints)
   │
   ▼
user browser

The chain is the source of truth. The indexer polls the RIK contract for RepoRegistered events, enriches each event with GitHub metadata, and writes the result to SQLite. The API server reads from SQLite and broadcasts new registrations over Server-Sent Events. The web app subscribes to the SSE stream and renders.

Reading list ​

Local development ​

The monorepo uses pnpm workspaces. From the repo root:

bash
CONTRACT_ADDRESS="0xc03a52cD0EB2d5d456e64bda0557Db04608d1eac" RPC_URL="https://base-sepolia-rpc.publicnode.com" CHAIN_ID=84532 pnpm dev

This runs the API, the indexer, and the web app concurrently. Use the per-app helpers to develop pieces in isolation:

bash
pnpm dev:docs      # this site
pnpm dev:landing   # marketing site

See the README for the full set of scripts and per-app filters.

Continue ​

Released under the Apache 2.0 License.