Build log

30 days, 30 interfaces

30 UI designs from a community challenge — each one built out in Astro. The designs came from the challenge brief; my job was to take them from static mockup to working, responsive code. Day 30 is the challenge portfolio itself.

30/30 shipped
  • Hero section exploration

    Explored headline hierarchy and visual balance in a hero layout.

    View live
  • Layout study

    Experimented with grid-based composition and whitespace.

    View live
  • Hero with mobile breakpoint

    Focused on how the hero adapts gracefully from desktop to mobile.

    View live
  • Footer design

    Designed a footer that balances links, branding, and legal text cleanly.

    View live
  • Pricing page

    Built a pricing layout with clear tier differentiation across breakpoints.

    View live
  • Photo ledge editorial layout

    Explored a ledge-style photo layout for editorial storytelling.

    View live
  • Gallery page

    Designed a grid gallery with hover reveal and consistent rhythm.

    View live
  • Maxeene — film foundation desktop

    Dark editorial layout for a film foundation with strong typographic hierarchy.

    View live
  • Maxeene — film foundation mobile

    Adapted the Maxeene editorial to mobile — tested how the layout stacks at small viewports.

    View live
  • Tech stack tags

    Designed pill-style tech tags with hover states and responsive wrapping.

    View live
  • Payroll dashboard

    Laid out a payroll management dashboard with data tables and status indicators.

    View live
  • Fintech landing page

    Built a fintech product page with trust signals, feature blocks, and CTAs.

    View live
  • Unfiltered — editorial with dropdown

    Explored an editorial layout with a functional dropdown navigation component.

    View live
  • Candi — product page

    Designed a clean product landing for Candi with lifestyle imagery and conversion sections.

    View live
  • Cloud 9 — SaaS landing

    SaaS-style landing page with feature grids and a pricing teaser section.

    View live
  • Collete — editorial layout

    Magazine-style editorial with large imagery, pull quotes, and measured column widths.

    View live
  • Profile editorial layout

    Designed a profile editorial with a sidebar bio and content columns.

    View live
  • Nature — full-bleed landing

    Full-bleed imagery hero with an immersive nature brand feel.

    View live
  • Folder — file organiser UI

    Designed a folder/file organiser component with nested states.

    View live
  • Multi-screen interaction study

    Explored a multi-step interaction flow across three distinct screen states.

    View live
  • Hero page composition

    Refined hero layout with overlapping elements and strong focal hierarchy.

    View live
  • Basin — brand hero

    Minimal brand hero for Basin — focused on typography and negative space.

    View live
  • Navigation bar

    Designed a desktop and mobile nav bar with active states and smooth transitions.

    View live
  • Apex — mega nav with dropdowns

    Built a full mega-navigation with Solutions and Resources dropdowns.

    View live
  • Ever Kind — lifestyle brand

    Warm lifestyle brand landing with editorial-style product sections.

    View live
  • Challenge community page

    Designed a community hub page for a design challenge — feeds, filters, and submissions.

    View live
  • Dezo — builders trail

    Progress tracker UI for Dezo's builders trail — empty and populated states.

    View live
  • Services page

    Structured services page with icon cards, descriptions, and a contact CTA.

    View live
  • Movie — cinematic UI

    Dark, cinematic layout inspired by film poster design and editorial typography.

    View live
  • 30-Day Challenge portfolio

    Day 30 is this page — a portfolio collecting all 29 implementations into one place, built with Astro as the final deliverable of the challenge.

    View live