Components
Feedback entry and acknowledgement
Let a person describe an issue with a named topic, message and optional mood.
On this page
Purpose and usage
Let a person describe an issue with a named topic, message and optional mood.
Anatomy
| Part | Contract |
|---|---|
| Topic | Required native select |
| Message | TextareaField |
| Mood | Optional icon-based choice |
| Acknowledgement | Local thanks after submit |
Variants and configuration
| Input or variant | Behavior |
|---|---|
| onSubmitted | Optional delayed parent callback |
| Submission | POST /api/feedback with topic, feedback, mood and current URL |
State coverage
| State | Implemented behavior |
|---|---|
| Draft | Topic/message required before submit |
| Sent | Thanks message and reset fields |
| Delay | Reset/callback after 1500ms |
Interaction and composition
- Keep user feedback out of public portfolio fixtures.
- Do not send an actual feedback message during capture.
- Make failures distinguishable from successful acknowledgement.
Accessibility and readiness
The current submit flow does not inspect res.ok before showing Thanks. Topic, message and mood naming, busy feedback and visible network failure need review. No outgoing feedback is sent by the harness.
Source references
| File | Responsibility |
|---|---|
| src/components/FeedbackForm.tsx | Topic, message, mood and POST acknowledgement |
Related topics
Source audit: 2026-10-07 · Revision d8cf23d0a329 · Documentation v0.1