1. Home
  2. Projects
  3. Bama — Transport Optimisation Dashboard
WiSiHe

Senior Frontend Developer & Digital Artist

Henrik Wilhelm Sissener

I build accessible web products and design systems, and paint on the side. Based in Oslo.

Send a message

Explore

  • Paintings
  • Projects
  • Videos
  • Photography
  • Recipes
  • Contact

More

  • Presentations
  • 3D Workshop
  • Design System

Connect

© 2026 Henrik Wilhelm Sissener

PrivacyBuilt in Oslo with Next.js & Sanityv1.1.0
DevelopmentBama

Transport Optimisation Dashboard

StatusCompleted
·
Timeline2023
·
Views4
·
Likes0

Overview

Internal transport dashboard for Bama (Aug–Oct 2023) — Next.js, GraphQL, and Tailwind for logistics routing and planning. Maps and tables built for operators, not demos.

The hard part was information density: show enough to decide fast, hide the rest. If the route view is wrong, trucks are wrong.

Bama moves a lot of produce around Norway. From August to October 2023 I worked on the frontend for an internal transport optimisation dashboard — a routing and planning view for logistics operators who need to trust what is on screen before trucks roll.

This was not a customer-facing product. It was ops software — the kind where a confusing column header wastes someone’s morning and a wrong route costs real money. Internal tools deserve the same clarity as public sites; they just optimise for decision speed instead of marketing.

The problem

Bama’s logistics tooling had grown messy over time — different UIs, unclear data ownership, and people doing workarounds in spreadsheets because the software did not show them what they needed in one place. The new dashboard had to pull transport data into a single view operators could actually use during planning.

What I built

  • Routing and planning views — map and table layouts tuned for comparing routes, stops, and assignments at a glance.
  • GraphQL data layer — typed queries against Bama’s transport API so the UI fetched only what each screen needed.
  • Performance-aware tables — large datasets that stay scrollable and readable without turning every row into a wall of numbers.
  • Operator-first interaction patterns — filters, drill-down, and hierarchy that assume someone is in a hurry, not browsing.

Stack

Next.js, TypeScript, and TailwindCSS on the frontend. GraphQL for transport data. The interesting engineering was not drawing a map — it was deciding what to hide so an operator could make a call in seconds instead of hunting through panels.

The hard part

Information density is the whole game in logistics UI. Show too little and people reopen Excel. Show too much and nobody trusts the screen. I spent most of the project on hierarchy — which metrics belong above the fold, which details wait for drill-down, and how map and table views stay in sync when the dataset grows.

What I took away

Internal software, real users who do not care about your component library. If the route view is wrong, trucks are wrong. Screenshots on this page are from the shipped dashboard — no public URL, but the constraints were sharper than many consumer projects I have worked on since.