docs: start frontend mvp milestone

This commit is contained in:
user
2026-04-26 18:34:47 +09:00
parent 4bb1d07f94
commit 3493f8b5a5
8 changed files with 225 additions and 18 deletions

View File

@@ -0,0 +1,30 @@
# Design: Frontend MVP
## Approach
Use a dependency-light web app served by the Go backend. The first UI can be
plain HTML/CSS/JavaScript so the repo avoids frontend build tooling until the
interaction model is proven.
## UX Principles
- First screen is the working tutor experience, not a marketing landing page.
- Keep the UI quiet, operational, and focused on repeated practice.
- Show evidence-backed feedback and next actions after each loop.
- Use clear loading, empty, and error states.
## Boundaries
In scope:
- Diagnostic practice.
- Learner memory and readiness display.
- Material ingestion and ontology inspection.
- Teaching asset prompt candidates.
Out of scope:
- Authentication.
- Multi-user persistence.
- Payment/subscription.
- Real provider image generation.

View File

@@ -0,0 +1,19 @@
# Change: frontend-mvp
## Why
The backend MVP now exposes the core tutoring loop, but job seekers still need
a web service experience instead of API tooling.
## What Changes
- Serve a web app from the Go backend.
- Add diagnostic practice UI.
- Add learner progress UI.
- Add material ingestion, ontology inspection, and teaching asset prompt UI.
## Impact
- Adds frontend capability requirements.
- Keeps Go backend as the serving boundary for the MVP.
- Does not introduce authentication, persistence, or real image generation.

View File

@@ -0,0 +1,44 @@
# frontend-mvp Specification
## ADDED Requirements
### Requirement: Web app exposes the job-seeker tutoring loop
The system SHALL provide a browser UI for the diagnostic interview loop.
#### Scenario: user starts diagnostic practice
- **GIVEN** a job seeker opens the web app
- **WHEN** they enter target role, stack, and interview timeline
- **THEN** the app creates a diagnostic session
- **AND** shows role-relevant questions.
#### Scenario: user submits an answer
- **GIVEN** a diagnostic session is active
- **WHEN** the user submits an answer
- **THEN** the app shows typed grading feedback
- **AND** the feedback links to evidence-backed learning state.
### Requirement: Web app exposes learning progress
The system SHALL show learner memory, readiness, and next challenge from the
backend APIs.
#### Scenario: progress appears after answer
- **GIVEN** the user has submitted at least one answer
- **WHEN** the app refreshes progress
- **THEN** it shows concept mastery, readiness percentage, and next challenge.
### Requirement: Web app exposes content operations
The system SHALL provide MVP operator controls for material ingestion,
ontology inspection, and teaching asset prompt candidates.
#### Scenario: operator creates teaching asset prompt
- **GIVEN** source material has produced ontology candidates
- **WHEN** the operator generates an asset prompt for a concept
- **THEN** the prompt shows source evidence, review state, model key, and model
verification guard.

View File

@@ -0,0 +1,8 @@
# Tasks
- [ ] 1. Implement web app shell served by the Go backend.
- [ ] 2. Implement diagnostic session start and answer submission UI.
- [ ] 3. Implement learner memory, readiness, and next challenge UI.
- [ ] 4. Implement material ingestion and ontology inspection UI.
- [ ] 5. Implement teaching asset prompt candidate UI.
- [ ] 6. Validate frontend MVP with tests, smoke checks, and OpenSpec.