You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Complete reference for every page, API route, and special file in the Next.js App Router (app/ directory).
Page Routes (27 pages)
/ — Home
File:app/page.tsx
Description: Scrollytelling home page. Dynamically imports ScrollytellingPage (no SSR). Features scroll-driven animations with three dashboard mockup states (data stream, physics particles, chart visualization), hero section, floating particle background (React Three Fiber), and footer CTA.
/landing — Alternate Landing
File:app/landing/page.tsx
Description: Identical to home — renders LandingEngine with its own layout/metadata. Metadata: "Swarming — Real-time Data Visualization Library for React & Three.js".
/world — Real-time 3D Visualization
File:app/world/page.tsx
Description: Core product page. Real-time 3D force-directed graph of blockchain activity (Solana, Ethereum, Base). Desktop shell UI with draggable windows, stats bar, timeline, share panel, and onboarding journey overlay.
Data:useProviders hook connects live WebSocket streams
Metadata:"Real-time Network Visualization — Force Directed Graph React"
/agents — AI Agent Dashboard
File:app/agents/page.tsx
Description: AI agent visualization dashboard. 3D force graph of autonomous agents executing tasks with a sidebar, live event feed, timeline, stats bar, and task inspector panel.
Description: Blog listing page. Grid of posts with tags, reading time, and dates.
Metadata:"Blog — Swarming"
/blog/[slug] — Blog Post (dynamic)
File:app/blog/[slug]/page.tsx
Dynamic: Yes — [slug] param
Description: Individual blog post. Dynamically loads a content component per slug. Uses generateStaticParams and generateMetadata for static generation.
Known slugs:swarming-vs-alternatives, websocket-to-3d, zero-dom-reads, building-realtime-viz-engine, rendering-5000-particles
/docs/[[...slug]] — Documentation Hub (catch-all)
File:app/docs/[[...slug]]/page.tsx
Dynamic: Yes — optional catch-all [[...slug]]
Description: Documentation hub. Renders the docs index at /docs or a specific doc page at any nested path. Uses navigation sidebar, content loader, and prev/next links.
Description: Performance comparison table of swarming vs d3-force, Sigma, Cytoscape, vis-network, force-graph, and ngraph at various node counts. Displays FPS, memory, and timing metrics.
Metadata:"Performance Benchmarks — Swarming"
/tools — Tools Hub
File:app/tools/page.tsx
Description: Index page with a card grid linking to all visualization tool demos, grouped by category.
Description: Chat endpoint powered by Claude Sonnet (claude-sonnet-4-6) via the Anthropic SDK. Per-IP rate limiting (20 requests per 60 seconds, max 10,000 IPs tracked).
Env: Requires GROQ_API_KEY (preferred) or ANTHROPIC_API_KEY
Validation: Max 50 messages, max 4,000 chars per message, non-empty strings, context value sanitization