R E V I Sprint 1 — System Design
DEMO Guide

Sprint 1 — System Design

Overview

Revi is a review tool that bridges human reviewers and AI agents. The system consists of a Vue 3 single-page application for human interaction and a REST API backend that both the frontend and AI agents consume.

The primary goal is to enable anchored feedback — comments that are pinned to specific locations within plans, designs, and prototypes — so agents can programmatically read, act on, and resolve feedback.

Architecture

The supported runtime is now a single Rust backend using Axum, paired with the Vue frontend and a vendored `common/` base that standardizes docs/demo/release entry points.

Vue 3 SPA  <--REST-->  Rust backend (revi)
                              |
AI Agent   <--/export-->  workspace/ + data/ + common/

Storage Layer

Comments are stored as JSON files on disk. Each item gets a comment file at data/comments/{subfolder}__{stem}.json. Archived batches go into data/archive/{subfolder}__{stem}.json.

This file-system approach keeps the tool portable — no database setup required. The trade-off is that concurrent writes from multiple processes could conflict, but in practice Revi runs single-process.

API Endpoints

The REST API follows standard conventions. All responses use camelCase field names. The agent export endpoint at /api/export/{item_id} returns only open comments with their anchor references.

  • GET /api/reviews — list all items
  • GET /api/export/{item_id} — agent export
  • POST /api/comments/{item_id} — add comment
  • PATCH /api/comments/{item_id}/{id}/resolve — resolve

Frontend Design

The Vue 3 SPA uses a split-pane layout. The left sidebar lists workspace items grouped by type. The center pane shows the content viewer, and the right panel contains the comment thread.

Comments support hover-linking — hovering a comment card highlights the referenced section, quote, or annotation pin in the content viewer.

Technology Choices

  • Vue 3 Composition API with Vue Router and Vue I18n
  • Vite for development and builds
  • Vitest for unit tests, Playwright for E2E
  • No component library — custom lightweight styles
1
2
3
4
1
Sidebar
2
Content Viewer
3
Comment Panel
4
Export Preview
Step 1 — List items
Step 2 — Open review
Step 3 — Add comment
Step 4 — Resolve

Step 1 — Browse review items

The sidebar lists all plans, designs, and prototypes

Open 3
Resolved 1
Agent Export Preview

          
← Back to site