# Aphoria Dashboard

Code quality assurance dashboard for Aphoria - the code-level truth linter powered by Episteme.

## Features

- **Scans**: Run and view Aphoria code scans with conflict detection
- **Claims**: Manage authored claims (architectural decisions, safety invariants, policy requirements)
- **Corpus**: Browse and filter the community corpus of authoritative sources (RFCs, OWASP, CWEs)

## Quick Start

```bash
# Install dependencies
npm install

# Run development server (port 18189)
npm run dev

# Build for production
npm run build

# Start production server (port 18189)
npm start
```

## Architecture

- **Framework**: Next.js 16 with App Router
- **UI**: TailwindCSS 4 + shadcn/ui components
- **Port**: 18189 (Aphoria Dashboard)
- **API Integration**: Proxies requests to StemeDB API at port 18180

## API Integration

The dashboard uses Next.js rewrites to proxy API requests:

```typescript
// All /v1/* requests are proxied to http://localhost:18180/v1/*
// This is configured in next.config.ts
```

Leave `NEXT_PUBLIC_STEMEDB_API_URL` empty in `.env.local` to use proxy mode.

## Project Structure

```
src/
├── app/                    # Next.js app router pages
│   ├── scans/             # Aphoria scans route
│   ├── claims/            # Claims management route
│   ├── corpus/            # Corpus browser route
│   └── layout.tsx         # Root layout with Aphoria branding
├── components/
│   ├── corpus/            # Corpus browser components
│   ├── scans/             # Scans panel components
│   ├── claims/            # Claims management components
│   ├── layout/            # Sidebar, header, theme toggle
│   ├── shared/            # Shared components (error, api-status)
│   └── ui/                # shadcn/ui components
└── lib/
    ├── api/               # API client (includes both StemeDB + Aphoria)
    └── utils.ts           # Utilities
```

## Related Projects

- **Aphoria Backend**: `applications/aphoria/` - Rust CLI and extractor engine
- **StemeDB Dashboard**: Port 18188 - Database admin dashboard
- **StemeDB API**: Port 18180 - Backend API

## Development

The dashboard shares some infrastructure with StemeDB Dashboard (UI components, API client, utilities). See `applications/DASHBOARD_SYNC.md` for sync procedures if you update shared code.
