Technical Documentation
Technical documentation for the Noah Dummett investigation platform architecture, APIs, and development guidelines.
Platform Architecture
Next.js App Router Structure
The platform uses Next.js 15 with App Router and route groups for clean URL separation between the main site and documentation.
src/app/ ├── (main)/ # Main investigation site │ ├── page.tsx # Homepage (noahdummett.com) │ ├── evidence/ # Evidence portal │ ├── legal/ # Legal documents │ └── noah-dummett/ # Profile page ├── (docs)/ # Documentation subdomain │ ├── layout.tsx # Docs-specific layout │ └── docs/ # Documentation pages │ ├── page.tsx # Docs homepage (docs.noahdummett.com) │ ├── evidence-analysis/ │ └── technical/ ├── globals.css # Global styles └── layout.tsx # Root layout
Middleware & Routing
Subdomain Routing
Custom middleware handles subdomain routing to provide clean URL separation:
noahdummett.com
→src/app/(main)/
docs.noahdummett.com
→src/app/(docs)/docs/
// src/middleware.ts export function middleware(request: NextRequest) { const hostname = request.headers.get('host') || ''; if (hostname.startsWith('docs.')) { const newPath = pathname === '/' ? '/docs' : `/docs${pathname}`; return NextResponse.rewrite(new URL(newPath, request.url)); } return NextResponse.next(); }
Technology Stack
Core Technologies
Frontend
- Next.js 15 (App Router)
- React 19
- TypeScript
- Tailwind CSS 4
- Framer Motion
Content & Documentation
- MDX Support
- Remark & Rehype Plugins
- Syntax Highlighting
- Auto-generated TOC
Deployment & Infrastructure
Single Deployment Strategy
Both the main site and documentation are served from a single Next.js deployment, with subdomain routing handled by middleware.
- Single codebase for both main site and docs
- Shared components and styling
- Unified deployment pipeline
- Centralized content management