Skip to content

feat: Add web frontend#4

Open
stevensdavid wants to merge 3 commits intov1.0from
claude/web-frontend-setup-tSSpx
Open

feat: Add web frontend#4
stevensdavid wants to merge 3 commits intov1.0from
claude/web-frontend-setup-tSSpx

Conversation

@stevensdavid
Copy link
Owner

No description provided.

- Consolidate all backend API endpoints under /api/v1/ prefix
  - Move summary, results, trigger into api_v1 router
  - Change trigger from GET to POST (has side effects)
  - Remove standalone /monitors routes and root handler
- Add tower-http ServeDir for serving frontend static files with SPA fallback
- Scaffold React 19 + TypeScript + Vite frontend with Tailwind CSS v4
- Implement full-featured dashboard:
  - Monitor list with status badges, tag filtering, auto-refresh
  - Monitor detail page with config summary, results timeline, trigger/edit/delete
  - Create/edit forms supporting single-step and multi-step monitors
  - Expectations UI with field/operation/value rows and contextual hints
  - Headers, alerts, tags management with add/remove
  - Client-side validation and server error display
  - Optimistic locking for edits (version-based conflict detection)
- Add 45 frontend tests (Vitest + React Testing Library):
  - API client tests with mocked fetch
  - Monitor list page tests (rendering, filtering, error states)
  - Monitor form tests (validation, submission, mode toggling)
  - Monitor detail page tests (config display, trigger, delete)
- Update Dockerfile with Node.js frontend build stage
- Update .gitignore for frontend artifacts

https://claude.ai/code/session_01U5LQPYdkkUjS7h9UH2bz1d
@stevensdavid stevensdavid changed the title Initial plan feat: Add web frontend Mar 11, 2026
- Fix rustfmt formatting in api_v1/mod.rs and web_server/mod.rs
- Add frontend_test job to test.yaml workflow (npm ci, build, test)

https://claude.ai/code/session_01U5LQPYdkkUjS7h9UH2bz1d
@stevensdavid stevensdavid changed the base branch from main to v1.0 March 11, 2026 05:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants