pnpm + TypeScript workspace per design doc §13:
- apps/{web,api,worker} skeletons (Next.js 16, Fastify 5, BullMQ)
- packages/{core,solana,prometheus,db,config} (core has real types/DTOs;
solana/prometheus are stubs)
- programs/pyre-core placeholder (future Anchor, v1.0)
- docs/: PYRE_MVP_DESIGN (canonical), ARCHITECTURE, SECURITY, TOKEN_CLASSIFICATION
- CLAUDE.md, README, .env.example (no private-key var by design)
Skeleton + docs only — no Solana/business logic yet. All workspaces typecheck clean.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
programs/pyre-core
Future Anchor (Solana) program for trust-critical, on-chain accounting.
Not needed for the first burner MVP (v0.1–v0.4). This directory is a placeholder. The PYRE Core Program lands in MVP v1.0 (see
docs/PYRE_MVP_DESIGN.md§5, §18 Phase 7).
Planned program responsibilities (v1.0)
- create round
- accept Essence
- hold Essence vault
- record contribution receipts (receipt PDA)
- lock round
- register Spawn mint
- open claims
- distribute Spawn pro rata
- support refunds for failed rounds
- prevent double claims
Until on-chain custody exists: do not call contributions a "deposit" and do not promise claims. Off-chain Essence accounting (Phase 6) stays explicitly experimental.