Web console for DocSentinel — security assessment dashboard, review workflows, and remediation tracking.
- Dashboard — overview metrics, severity breakdown, recent activity
- Assessments — submit, list, filter, and review security assessments
- Assessment Detail — full report view with risks, compliance gaps, remediations, HITL review actions, comments, and activity feed
- Knowledge Base — upload policy documents, search via hybrid RAG, reindex
- Skills — browse built-in and custom assessment personas, create/edit/delete custom skills
- Settings — API connection, theme toggle, LLM config display
- Next.js 14+ (App Router, TypeScript)
- Tailwind CSS + shadcn/ui
- TanStack Query — data fetching, caching, polling
- Zustand — state management
- next-themes — dark/light mode
- Node.js 18+
- DocSentinel backend running on port 8000
# Clone the repo
git clone https://github.com/arthurpanhku/DocSentinel-Console.git
cd DocSentinel-Console
# Install dependencies
npm install
# Configure the API URL (defaults to http://localhost:8000)
cp .env.example .env.local
# Start the dev server
npm run devOpen http://localhost:3000 in your browser.
| Variable | Default | Description |
|---|---|---|
NEXT_PUBLIC_API_BASE_URL |
http://localhost:8000 |
DocSentinel API base URL |
The API URL can also be changed at runtime via the Settings page.
src/
app/ # Next.js App Router pages
dashboard/ # Dashboard with metrics and activity
assessments/ # Assessment list, new, and detail pages
knowledge-base/ # KB upload, query, and reindex
skills/ # Skills grid and detail/edit
settings/ # API URL, theme, LLM config
components/
ui/ # shadcn/ui primitives
layout/ # Sidebar, header, providers
assessments/ # Status/severity badges, file upload, skill selector
lib/
api/ # Typed API client modules
hooks/ # TanStack Query hooks
stores/ # Zustand stores (settings, UI)
types/ # TypeScript interfaces mirroring backend models
utils/ # Formatting and color utilities
MIT