Skip to content
Frank Spin
Menu
All projects

GitlabHost Dashboard

I built the GitlabHost dashboard front end from design to shipped UI. It brings onboarding, instance and runner management, billing, support, and account settings into one product that feels consistent day to day.

Role
Lead front-end engineer
Period
2025
Stack
Django, HTMX, Alpine.js, Tailwind CSS, Chart.js, Dashboard UX
With
UI design by Martijn Runia, Front-end architecture and product UI implementation by Frank Spin, Feature-level technical implementation by GitlabHost's in-house development team
GitlabHost Dashboard screenshot: home

The problem

The dashboard had to support many workflows and edge states without feeling like separate tools stitched together.

Approach

Martijn set the visual direction. I turned that into reusable Django templates and front-end components with HTMX, Alpine.js, Tailwind CSS, and Chart.js. We walked through the key user flows in the browser and captured the important states so design and implementation stayed in sync. Feature-level technical implementation was handled by GitlabHost's in-house development team.

Outcome

The dashboard now feels like one product instead of separate tools. Even complex flows stay readable, and new modules can be added without rebuilding the UI.

What changed

  • 22 key screens selected from a full route inventory.
  • Shared UI patterns across onboarding, billing, support, and settings.
  • Faster handoff because new states reuse existing UI structures.