S-09 · Openbaar Register portal — public lookup #10

Closed
opened 2026-06-03 09:52:58 +00:00 by eho · 2 comments
Owner

Outcome: The openbaar Angular app shows a search box. Anonymous. Queries the BFF's /openbaar/register which reads only the projection's public-safe fields. Shows the public visibility half of the walking skeleton.

Scoped to the portal only (split from the original S-09 — see #75 for the approval flow).

Acceptance:

  • apps/openbaar scaffolded (standalone + signals, NL Design System), anonymous (no DigiD), served in compose behind nginx (proxy /openbaar → BFF), like self-service.
  • Search box queries the generated api-client's getOpenbaarRegister(q); results render; empty/loading states handled.
  • Public-safe field whitelist already enforced + tested in the BFF (OpenbaarProjection.PublicView); add a portal component test + a11y (axe) check.
  • E2E extended: after a self-service submit (S-08), the Openbaar register shows the entry (as INGEDIEND).

Touches: apps/openbaar/, compose serving, e2e, docs.

Out of scope: approval/status transition (#75), advanced search filters, sorting.

Definition of Done

  • A linked Gitea issue exists (this one).
  • Failing test written and committed first.
  • Implementation makes the test pass.
  • Refactor commit follows if structure improved.
  • Conventional Commit messages referencing this issue (refs #10).
  • All Gitea Actions CI jobs green.
  • docker compose up from a fresh clone reaches green health checks within 3 minutes.
  • Docs touched (frontend-decisions, demo-script).
  • This issue closed by the merging PR (closes #10).
**Outcome:** The openbaar Angular app shows a search box. Anonymous. Queries the BFF's `/openbaar/register` which reads only the projection's **public-safe** fields. Shows the public visibility half of the walking skeleton. _Scoped to the portal only (split from the original S-09 — see #75 for the approval flow)._ **Acceptance:** - `apps/openbaar` scaffolded (standalone + signals, NL Design System), anonymous (no DigiD), served in compose behind nginx (proxy `/openbaar` → BFF), like self-service. - Search box queries the generated api-client's `getOpenbaarRegister(q)`; results render; empty/loading states handled. - Public-safe field whitelist already enforced + tested in the BFF (`OpenbaarProjection.PublicView`); add a portal component test + a11y (axe) check. - E2E extended: after a self-service submit (S-08), the Openbaar register shows the entry (as `INGEDIEND`). **Touches:** `apps/openbaar/`, compose serving, e2e, docs. **Out of scope:** approval/status transition (#75), advanced search filters, sorting. ## Definition of Done - [ ] A linked Gitea issue exists (this one). - [ ] Failing test written and committed first. - [ ] Implementation makes the test pass. - [ ] Refactor commit follows if structure improved. - [ ] Conventional Commit messages referencing this issue (`refs #10`). - [ ] All Gitea Actions CI jobs green. - [ ] `docker compose up` from a fresh clone reaches green health checks within 3 minutes. - [ ] Docs touched (frontend-decisions, demo-script). - [ ] This issue closed by the merging PR (`closes #10`).
eho added this to the Iteration 1 — Walking Skeleton milestone 2026-06-03 09:52:58 +00:00
eho added the area:portal-openbaararea:projectiontype:slice labels 2026-06-03 09:52:58 +00:00
Author
Owner

Note: commits and PR #40 that reference "#10" were an issue-number mix-up during S-01-a — that OpenZaak work belongs to S-01 (#2), not S-09. This issue (S-09 · Openbaar Register portal) has not been started yet.

Note: commits and PR #40 that reference "#10" were an issue-number mix-up during **S-01-a** — that OpenZaak work belongs to **S-01 (#2)**, not S-09. This issue (S-09 · Openbaar Register portal) has not been started yet.
Contributor

Scope split (CLAUDE.md §13). The walking skeleton has only the INGEDIEND status and no approval/status-transition path yet, so the approve→visible half is a separate vertical slice. This issue is now scoped to the Openbaar portal against the existing public-safe BFF /openbaar/register endpoint (demoable: the public sees the submitted INGEDIEND entry). The approval flow is tracked in #75.

Scope split (CLAUDE.md §13). The walking skeleton has only the INGEDIEND status and no approval/status-transition path yet, so the approve→visible half is a separate vertical slice. This issue is now scoped to the **Openbaar portal** against the existing public-safe BFF /openbaar/register endpoint (demoable: the public sees the submitted INGEDIEND entry). The approval flow is tracked in #75.
not closed this issue 2026-07-13 14:35:35 +00:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: eho/register-referentie#10