Dashboard
MemLayer includes a web-based dashboard for monitoring the state of your memory system. It is the landing page of the frontend application, accessible at the root URL (/).
Features
Section titled “Features”The dashboard is organized into four sections:
Health Status
Section titled “Health Status”A real-time indicator in the top-right corner shows whether the MemLayer API is reachable. It refreshes every 30 seconds and displays either Healthy (green) or Unhealthy (red).
Quick Stats
Section titled “Quick Stats”Four cards at the top provide a snapshot of your instance:
| Card | Description |
|---|---|
| Total Memories | Count of all stored memories across every layer |
| Vector Count | Number of embeddings in the Qdrant vector database |
| Facts | Count of memories classified in the Fact layer |
| Episodes | Count of memories classified in the Episode layer |
Memory Distribution
Section titled “Memory Distribution”A breakdown of memories by semantic layer, showing the count and percentage for each:
- Domain — broad topic areas (Layer 0)
- Concept — abstract ideas within a domain (Layer 1)
- Fact — specific, atomic pieces of knowledge (Layer 2)
- Episode — time-bound events or interactions (Layer 3)
Each layer is displayed as a color-coded progress bar so you can see at a glance how your knowledge graph is balanced.
Consistency Check
Section titled “Consistency Check”Monitors data integrity between the memory store (XTDB) and the vector store (Qdrant). It reports two metrics:
- Missing Vectors — memories that do not have a corresponding embedding in Qdrant.
- Orphan Vectors — embeddings in Qdrant that no longer correspond to a memory.
When inconsistencies are detected, the panel highlights with a yellow border and suggests running a cleanup.
Other Pages
Section titled “Other Pages”The dashboard sidebar provides navigation to the rest of the frontend:
| Page | Path | Purpose |
|---|---|---|
| Dashboard | / | System overview (this page) |
| Browser | /browser | Search and browse stored memories |
| Playground | /playground | Test retain and recall operations interactively |
| Graph | /graph | Visualize memory relationships as an interactive graph |
API Endpoints
Section titled “API Endpoints”The dashboard consumes two backend endpoints. Neither requires authentication.
GET /health — Returns "ok" when the API and its database connections are operational. Polled every 30 seconds.
GET /api/v1/debug/state — Returns a JSON object with memory counts, vector counts, layer distribution, and consistency check results. Polled every 10 seconds.
Example response:
{ "memory": { "total_count": 142, "by_layer": [ ["domain", 5], ["concept", 18], ["fact", 87], ["episode", 32] ] }, "vector": { "total_count": 142, "collection_name": "memories" }, "consistency": { "missing_vectors": 0, "orphan_vectors": 0, "missing_vector_ids": [] }}Accessing the Dashboard
Section titled “Accessing the Dashboard”The dashboard is available at app.memlayer.dev after signing in.