feat(person): add notes / biography field #23
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
User Journey
The family archivist is digitising the archive and knows rich biographical context for many persons — professions, places of residence, historical events they lived through. Currently there is nowhere to record this; it exists only in a separate Word document that nobody else can see.
With this feature, the archivist opens Heinrich's edit form, types a short biography into the "Notizen" textarea, and saves. Future visitors to Heinrich's page see this context directly, grounding the documents in a human story.
High-Level Plan
Add an optional
notestext column to thepersonstable. Expose it through the existing update endpoint and edit form. Display it in view mode only when non-empty.Layers touched: Flyway migration → JPA entity → DTO → OpenAPI types → frontend form + display.
Detailed Plan
Backend
Migration
V{n}__add_person_notes.sql:Personentity:PersonUpdateDTO:PersonService.update()— mapnotesfrom DTO to entity (treat empty string as null).Rebuild JAR, run
npm run generate:api.Frontend
Edit form — add a textarea at the bottom of the edit section in
persons/[id]/+page.svelte:View mode — render a "Notizen" card below the person header, only when
person.notesis non-empty:+page.server.tsupdateaction — read and forwardnotesfrom form data.i18n keys:
form_label_notes: DE"Notizen"/ EN"Notes"/ ES"Notas"person_notes_heading: DE"Biographische Notizen"/ EN"Biographical notes"/ ES"Notas biográficas"Acceptance Criteria
whitespace-pre-wrap)