Skip to Content
Need help or updates? Join the RaidGuild Discord.
Project Spec and Team Structure

Project Spec and Team Structure

This section provides team roles and the high-level product scope for the x402 Facilitator project.

Team roles

  • Project Lead: @Rome (scope, timeline, tie-breaker)
  • Frontend Lead: @Mike (UI, auth, Next.js structure)
  • Backend Lead: @Ryan (Go endpoints, database schema, infrastructure)
  • Design Lead: @Patrick (visuals, UX)

Decision rule: if a technical decision takes longer than 5 minutes, the relevant Lead decides.

High-level objective

Build a hosted x402 Facilitator and a Developer Dashboard where users can sign in with a wallet, pay a fee, and generate API keys for facilitator access.

System architecture

  • Facilitator (Go backend): processes x402 requests
  • Dashboard (Next.js frontend): UI for key purchase and management
  • Database (Supabase/Postgres): stores API key records and usage data

Dashboard requirements

Tech: Next.js, Vercel, Tailwind, Privy for wallet auth.

MVP scope:

  • Public landing page with marketing and docs
  • Protected dashboard:
    • Generate key (wallet transaction, pay in USDC)
    • List keys by wallet address
    • Reveal key once, store hash only

Non-goals for MVP:

  • Billing history
  • Logs
  • Revocation
  • Advanced analytics

Facilitator requirements

  • Validate API keys against Supabase
  • Execute x402 transactions
  • Hold a private key for gas

Endpoints:

  • GET /supported
  • POST /verify
  • POST /settle

Database schema

Table: api_keys

Columns: id, user_wallet_address, api_key_hash, salt, payment_tx_hash, created_at, expires_at

Store only hashed keys; never store raw API keys.

Side quest (testing)

Build a “Buy Me a Coffee” widget to dogfood the facilitator. Use Tanstack Start and deploy on Next.js.

Communication norms

  • Async standups Mon-Fri by 12:00 PM EST in Discord
  • Use a quick voice sync if a debate runs longer than 5 minutes
  • Update Discord status when heads down vs available
Last updated on