Enterprise Customer Portal
Scroll ↓

via OPTEN AG · Jul — Sep 2025

Enterprise Customer Portal.

Client
via OPTEN AG
Role
Frontend engineering
Stack
Angular 17 · Umbraco · SCSS
Timeline
Jul — Sep 2025

A customer portal assembled from a reusable component library I built: ~15 components — sortable tables, slide-in sidenav, tabbed button groups, phone input, dropdown filters, modals — composed into 10+ sections, admin and client views. Mock-first workflow decoupled frontend from backend timing.

A portal is a composition problem

The brief looked like ten-plus screens: customer lists, document archives, profile management, admin views. Built screen by screen, that becomes ten-plus sets of one-off table code and ten-plus interpretations of the same design system. So I inverted it — the deliverable was a component library first, and every section became an assembly of parts that already existed.

Fifteen components, ten-plus sections

Roughly fifteen components carried the whole portal: sortable data tables, a slide-in sidenav, tabbed button groups, dropdown filters, modals, pagination, a phone input with country handling. Each was built once, against the design system, responsive by default — so a fix to the table improved every section using it, and consistency stopped being a review conversation.

Drag the diagram sideways to read it

Around fifteen library components composed into every admin and client view — no one-off screen code

Mock-first, backend unblocked

The backend was on its own schedule, so the frontend built against mock data shaped like the agreed responses. It kept both teams moving in parallel and forced the components to be honest about states — empty, loading, error, one row, two hundred rows — because the mock could produce all of them on demand, long before a real endpoint could.

Admin and client, one language

Two audiences share the codebase: staff administering accounts and customers using their own. Same library, same interaction grammar, different permissions and density — which meant the admin side inherited the polish of the customer-facing side for free, instead of ending up as the usual neglected back office.

15-component library powering 10+ portal sections from one design system.

For a Swiss customer portal, Alexander delivered the administration platform: a collapsible sidebar, a reusable data table, and the customer, documents and profile views — all mobile-responsive and true to the design system.
Noël BossartCEO & Co-Founder · Noevu GmbH — QA & technical oversight