Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ const Stellar = lazy(() => import('./pages/Stellar'));
const Roadmap = lazy(() => import('./pages/Roadmap'));
const CaseStudies = lazy(() => import('./pages/CaseStudies'));
const Careers = lazy(() => import('./pages/Careers'));
const Waves = lazy(() => import('./pages/Waves'));
const Wave = lazy(() => import('./pages/Wave'));
const NotFound = lazy(() => import('./pages/NotFound'));

function Home() {
Expand Down Expand Up @@ -74,6 +76,8 @@ export default function App() {
<Route path="/roadmap" element={<Roadmap />} />
<Route path="/case-studies" element={<CaseStudies />} />
<Route path="/case-studies/:slug" element={<CaseStudies />} />
<Route path="/waves" element={<Waves />} />
<Route path="/waves/:number" element={<Wave />} />
{/* Wrap Stellar with Layout */}
<Route
path="/stellar"
Expand Down
13 changes: 13 additions & 0 deletions src/components/Header.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,12 @@ export default function Header() {
>
{t('header.nav.roadmap')}
</Link>
<Link
to="/waves"
className="font-body text-[13px] text-outline transition-colors duration-150 hover:text-on-surface-variant"
>
{t('header.nav.waves')}
</Link>
</nav>

<div className="hidden items-center gap-3 md:flex">
Expand Down Expand Up @@ -276,6 +282,13 @@ export default function Header() {
>
{t('header.nav.roadmap')}
</Link>
<Link
to="/waves"
onClick={closeMenu}
className="font-body text-[13px] text-outline transition-colors duration-150 hover:text-on-surface-variant"
>
{t('header.nav.waves')}
</Link>
<a
href="https://github.com/wraith-protocol"
target="_blank"
Expand Down
35 changes: 35 additions & 0 deletions src/data/waves/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import wave1 from './wave-1.json';
import wave2 from './wave-2.json';
import wave3 from './wave-3.json';
import wave4 from './wave-4.json';
import wave5 from './wave-5.json';
import wave6 from './wave-6.json';
import wave7 from './wave-7.json';

export type WaveContributor = {
handle: string;
role: string;
prs: number;
optedIn: boolean;
};

export type WaveStatus = 'completed' | 'open' | 'upcoming';

export type Wave = {
number: number;
title: string;
status: WaveStatus;
startDate: string | null;
endDate: string | null;
budget: string;
budgetToken: string;
goals: string[];
highlights: string[];
summary: string;
prsmerged: number;
contributors: WaveContributor[];
issuesUrl?: string;
winnersNote: string | null;
};

export const waves: Wave[] = [wave1, wave2, wave3, wave4, wave5, wave6, wave7] as Wave[];
50 changes: 50 additions & 0 deletions src/data/waves/wave-1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
{
"number": 1,
"title": "Genesis Wave",
"status": "completed",
"startDate": "2024-01-15",
"endDate": "2024-02-28",
"budget": "5000",
"budgetToken": "USDC",
"goals": [
"Bootstrap the ERC-5564 stealth address cryptographic primitives",
"Deploy announcement contracts on first EVM testnet",
"Publish initial TypeScript SDK scaffolding",
"Write developer documentation skeleton"
],
"highlights": [
"First functional stealth address generation on EVM",
"Published @wraith-protocol/sdk v0.1.0 to npm",
"Core ECDH key derivation passing full test suite",
"Announcement contract deployed to Sepolia"
],
"summary": "The genesis wave established the cryptographic foundation of Wraith Protocol. A small group of contributors built the stealth address primitives from scratch, shipped the first npm package, and deployed the inaugural announcement contract to Sepolia testnet.",
"prsmerged": 14,
"contributors": [
{
"handle": "0xcypherpunk",
"role": "Cryptography",
"prs": 5,
"optedIn": true
},
{
"handle": "stellardev",
"role": "SDK",
"prs": 4,
"optedIn": true
},
{
"handle": "anon-1",
"role": "Contracts",
"prs": 3,
"optedIn": false
},
{
"handle": "anon-2",
"role": "Docs",
"prs": 2,
"optedIn": false
}
],
"winnersNote": "Top contributor bounties distributed via Drips stream ending 2024-03-07."
}
56 changes: 56 additions & 0 deletions src/data/waves/wave-2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
"number": 2,
"title": "Multi-Chain Core",
"status": "completed",
"startDate": "2024-03-04",
"endDate": "2024-04-14",
"budget": "8000",
"budgetToken": "USDC",
"goals": [
"Extend stealth address support to Stellar testnet",
"Add Solana keypair adapter to the SDK",
"Implement ERC-6538 registry contract",
"Ship scanning service MVP using Goldsky subgraph"
],
"highlights": [
"Stellar memo-enabled stealth transactions working end-to-end",
"Solana adapter merged into monorepo",
"ERC-6538 registry audited and deployed to Sepolia + Horizen",
"Goldsky subgraph indexing announcement events in <2s"
],
"summary": "Wave 2 expanded the protocol beyond EVM. Contributors ported the stealth address model to Stellar and Solana, implemented the ERC-6538 registry, and built the first version of the scanning service that would become Spectre.",
"prsmerged": 21,
"contributors": [
{
"handle": "0xcypherpunk",
"role": "Contracts + Registry",
"prs": 6,
"optedIn": true
},
{
"handle": "novachain",
"role": "Stellar adapter",
"prs": 5,
"optedIn": true
},
{
"handle": "rustacean99",
"role": "Solana adapter",
"prs": 4,
"optedIn": true
},
{
"handle": "anon-3",
"role": "Subgraph",
"prs": 4,
"optedIn": false
},
{
"handle": "anon-4",
"role": "Tests",
"prs": 2,
"optedIn": false
}
],
"winnersNote": "Bounties streamed via Drips; stream closed 2024-04-28."
}
56 changes: 56 additions & 0 deletions src/data/waves/wave-3.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
"number": 3,
"title": "Spectre TEE",
"status": "completed",
"startDate": "2024-05-06",
"endDate": "2024-06-16",
"budget": "12000",
"budgetToken": "USDC",
"goals": [
"Deploy Spectre scanning server inside an Intel TDX TEE (Phala Network)",
"Implement the ChainConnector interface for all four supported chains",
"Add gas-sponsored withdrawal flow via EIP-7702",
"Launch internal developer alpha"
],
"highlights": [
"Spectre TEE server live on Phala — first trustless scanning in production",
"ChainConnector interface unified across EVM, Stellar, Solana, CKB",
"EIP-7702 gas sponsorship tested on Holesky",
"12 external developers onboarded to private alpha"
],
"summary": "The Spectre wave delivered the trust model that sets Wraith apart. By running the scanning server inside a Phala Intel TDX TEE, contributors made it possible to scan for incoming payments without ever exposing viewing keys to the infrastructure operator.",
"prsmerged": 28,
"contributors": [
{
"handle": "teatime_tee",
"role": "TEE integration",
"prs": 8,
"optedIn": true
},
{
"handle": "0xcypherpunk",
"role": "EIP-7702 sponsorship",
"prs": 6,
"optedIn": true
},
{
"handle": "novachain",
"role": "ChainConnector CKB",
"prs": 5,
"optedIn": true
},
{
"handle": "anon-5",
"role": "Alpha onboarding",
"prs": 5,
"optedIn": false
},
{
"handle": "anon-6",
"role": "Docs",
"prs": 4,
"optedIn": false
}
],
"winnersNote": "Bounties streamed via Drips; top contributors received bonus allocation from DAO treasury."
}
57 changes: 57 additions & 0 deletions src/data/waves/wave-4.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"number": 4,
"title": "SDK Unification",
"status": "completed",
"startDate": "2024-07-08",
"endDate": "2024-08-18",
"budget": "15000",
"budgetToken": "USDC",
"goals": [
"Ship @wraith-protocol/sdk v1.0.0 with per-chain subpath exports",
"Write comprehensive API reference documentation",
"Build multichain demo application",
"Reduce SDK bundle size below 30 kB gzipped"
],
"highlights": [
"@wraith-protocol/sdk v1.0.0 published — single package, four chains",
"Per-chain subpath exports: /evm, /stellar, /solana, /ckb",
"Demo app live at demo.usewraith.xyz",
"Bundle: 26 kB gzipped — under target",
"API docs fully published at docs.usewraith.xyz"
],
"summary": "Wave 4 unified the fragmented chain-specific packages into a single ergonomic SDK. The 1.0.0 release shipped with tree-shakeable per-chain exports, a reference demo app, and the first production-grade API documentation — the foundation external developers now build on.",
"prsmerged": 33,
"contributors": [
{
"handle": "bundlehero",
"role": "SDK architecture",
"prs": 9,
"optedIn": true
},
{
"handle": "stellardev",
"role": "Stellar subpath export",
"prs": 7,
"optedIn": true
},
{
"handle": "rustacean99",
"role": "Solana subpath export",
"prs": 6,
"optedIn": true
},
{
"handle": "0xcypherpunk",
"role": "EVM subpath + demo",
"prs": 6,
"optedIn": true
},
{
"handle": "anon-7",
"role": "Docs",
"prs": 5,
"optedIn": false
}
],
"winnersNote": "Drips stream distributed; SDK wave had the highest contributor retention to date."
}
57 changes: 57 additions & 0 deletions src/data/waves/wave-5.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"number": 5,
"title": "Platform Foundations",
"status": "completed",
"startDate": "2024-09-09",
"endDate": "2024-10-20",
"budget": "20000",
"budgetToken": "USDC",
"goals": [
"Build managed API layer with developer key issuance and rate limiting",
"Implement developer console UI (analytics, billing preview)",
"Deploy mainnet contracts on Horizen EON and Stellar mainnet",
"Complete first external security audit"
],
"highlights": [
"Managed API at api.usewraith.xyz — live for beta users",
"Developer console at console.usewraith.xyz — key management + usage graphs",
"Horizen EON mainnet contracts deployed and verified",
"Stellar mainnet contracts live",
"External audit by Halborn — 0 critical findings"
],
"summary": "Wave 5 moved Wraith from protocol to platform. Contributors built the managed infrastructure layer — developer keys, rate limiting, the console UI — and shipped the first mainnet contracts. The Halborn audit with zero critical findings cleared the way for production integrations.",
"prsmerged": 41,
"contributors": [
{
"handle": "consolebuilder",
"role": "Developer console",
"prs": 10,
"optedIn": true
},
{
"handle": "teatime_tee",
"role": "API gateway",
"prs": 9,
"optedIn": true
},
{
"handle": "0xcypherpunk",
"role": "Mainnet contracts",
"prs": 8,
"optedIn": true
},
{
"handle": "novachain",
"role": "Stellar mainnet",
"prs": 7,
"optedIn": true
},
{
"handle": "anon-8",
"role": "Audit remediation",
"prs": 7,
"optedIn": false
}
],
"winnersNote": "Drips stream closed 2024-11-03. Audit bonus paid from DAO treasury."
}
Loading
Loading