Lumsden Online

Blog about random stuff Andy Lumsden does

Magazine-style website redesign with dark backgrounds and cream cards

Photo Credit: AI Generated

Magazine-Style Redesign: A Complete Visual Overhaul

March 01, 20267 min read

Magazine-Style Redesign: A Complete Visual Overhaul

After months of running a simple blog, I decided it was time for a complete visual transformation. Inspired by modern editorial design systems, I embarked on a comprehensive redesign journey that touched every aspect of my portfolio website. Here's the story of how I transformed my site from a basic blog into a sophisticated, magazine-style platform.

The Vision

The goal was ambitious: create a premium, editorial experience that felt more like a curated magazine than a typical developer blog. I wanted:

  • Bold visual hierarchy with dark charcoal backgrounds and cream content cards
  • Magazine-style layouts that showcased content beautifully
  • Professional polish with consistent spacing, typography, and interactions
  • Modern design patterns inspired by publications like Medium and The Canvas

Most importantly, I wanted to maintain all existing functionality while dramatically improving the visual experience.

Design System Foundation

Color Palette

The redesign started with a complete color overhaul:

Light Mode:

  • Background: Charcoal (#2b2b2b)
  • Content Cards: Cream (#f5f3ed)
  • Accent Color: Coral (#e57373)
  • Text: White on dark, charcoal on light

Dark Mode:

  • Background: Darker charcoal (#1a1a1a)
  • Content Cards: Lighter charcoal (#3a3a3a)
  • Accent: Coral (consistent across themes)
  • Text: White on dark, cream on light

This high-contrast approach created visual drama while maintaining excellent readability (WCAG AAA compliance in most cases).

Typography Scale

I implemented a comprehensive type scale:

  • Display: 72px (48px mobile) for hero headings
  • H1: 48px (36px mobile) for page titles
  • H2: 36px (28px mobile) for sections
  • H3: 24px (20px mobile) for card titles
  • Body: 16px for content
  • Small: 14px for metadata

Every heading uses bold weights (700-800), while body text stays at 400 for optimal readability.

Spacing System

Consistent spacing became a core principle, with a scale from 4px to 200px:

  • xs (4px) → 3xl (80px) for component spacing
  • Section spacing (64-200px) for major page sections

This mathematical approach created visual rhythm throughout the site.

New Component Architecture

Card Component

The foundation of the new design is the Card component - a versatile cream container with three variants:

  • Default: 24px padding for standard content
  • Compact: 16px padding for dense layouts
  • Spacious: 32px padding for emphasis

Each card features subtle shadows (0 4px 16px rgba(0,0,0,0.08)) and a lift-on-hover effect that adds 4px of translation and deepens the shadow.

Button System

I created a unified button component with three variants:

  • Primary: Coral background, white text
  • Secondary: Coral border and text, transparent background
  • Ghost: Transparent, coral text, fills with coral on hover

All buttons use rounded-full styling, 44px minimum touch targets, and bold typography.

Tag Component

Category tags became small pill badges with charcoal backgrounds for light mode and appropriate dark mode variants. They're perfect for categorizing blog posts and highlighting topics.

Page-by-Page Transformation

Homepage Redesign

The homepage received the most dramatic changes:

  1. Featured Post Hero: Large section showcasing the most recent featured blog post with image, excerpt, and prominent CTA
  2. About Section: Quick bio with profile photo and link to full about page
  3. Recent Posts Grid: Responsive 3-column grid (2 on tablet, 1 on mobile) of blog cards
  4. Gallery Showcase: Horizontal scrolling gallery with click-to-expand modal

Each section uses the 64-80px spacing rhythm for visual consistency.

Blog Pages

Blog posts got a complete makeover:

  • Hybrid listing page: Featured post at top, followed by grid of remaining posts
  • Individual posts: Cream card backgrounds with hero images, category tags, and reading time estimates
  • Share buttons: Coral-styled CTAs for Twitter, LinkedIn, and Facebook
  • Improved typography: Custom prose styling for all MDX content elements

Navigation & Header

Navigation transformed from button-based to text links with coral underline animations on hover. The header now includes:

  • Logo/title with subtitle ("Test Engineer • Developer • Continuous Learner")
  • Horizontal navigation (collapsing to hamburger on mobile)
  • Theme toggle with SVG sun/moon icons
  • Social icons (GitHub, LinkedIn)

Footer

The footer expanded from a simple copyright line to a full three-column layout:

  • About: Brief description
  • Quick Links: Site navigation
  • Social: Icon links to profiles

Mobile-First Optimization

Every component was built mobile-first with proper breakpoints:

  • Desktop (1024px+): 3-column grids, full navigation
  • Tablet (768-1023px): 2-column grids, condensed spacing
  • Mobile (below 768px): Single column, hamburger menu, optimized touch targets

All interactive elements meet the 44px minimum touch target requirement for accessibility.

Theme System Enhancement

The existing dark/light theme toggle was preserved but enhanced:

  • Flash prevention using inline scripts in both SSR and browser contexts
  • Smooth 0.3s transitions for all color changes
  • Proper dark mode classes for every component
  • localStorage persistence and system preference detection

Technical Implementation

The redesign was built entirely with:

  • Tailwind CSS v4: For modern utility-first styling
  • Canvas Design System: Custom spacing, typography, and color tokens
  • Gatsby 5: Static site generation with GraphQL
  • React 19: Component architecture
  • MDX: Blog content with embedded components

Performance Wins

Despite the visual complexity, performance remained excellent:

  • Optimized images with gatsby-plugin-image and BLURRED placeholders
  • Responsive breakpoints: [320, 600, 1000, 1200]
  • Static generation for instant page loads
  • Lazy loading throughout

Lessons Learned

1. Design Systems Pay Dividends

Creating a comprehensive design system upfront (colors, typography, spacing) made implementation consistent and fast. Every new component automatically looked cohesive.

2. Mobile-First Is Non-Negotiable

Building mobile layouts first, then enhancing for larger screens, resulted in better responsive behavior than the reverse approach.

3. Tailwind v4 Has Breaking Changes

The v4 upgrade brought semantic changes to container utilities (max-w-2xl now uses spacing scale, not container scale). Custom color classes based on CSS variables don't auto-generate, requiring either inline styles or standard Tailwind colors.

4. Component Reusability Matters

Creating base components (Card, Button, Tag) that accept props and variants made building pages dramatically faster. The same Card component works everywhere from blog posts to the About page.

5. Theme Consistency Requires Discipline

Every component needed explicit dark mode classes. A systematic approach (adding dark: variants immediately after base classes) prevented missed cases.

Results

The transformation took the site from a basic blog to a polished, editorial experience:

  • 76 tasks completed across 9 implementation phases
  • 50+ components updated with dark mode support
  • WCAG AAA contrast ratios in most cases
  • Zero breaking changes to existing routes or functionality
  • Consistent visual language across all pages

Most importantly, the site now feels like a premium publication rather than a simple dev blog.

What's Next

With the redesign complete, future enhancements could include:

  • Blog post search and filtering by category
  • RSS feed for subscribers
  • Newsletter signup integration
  • Comments system
  • Reading progress indicator
  • Related posts algorithm improvements

But for now, I'm thrilled with the transformation. The magazine-style approach has elevated the entire site, making it a platform I'm proud to showcase.

Try It Yourself

If you're considering a similar redesign:

  1. Start with a design system - colors, typography, spacing
  2. Build base components first - Card, Button, etc.
  3. Work phase by phase - don't try to do everything at once
  4. Test mobile constantly - responsive issues are easier to fix early
  5. Use version control - commit after each phase

The investment in visual polish is worth it. A well-designed interface doesn't just look better—it communicates professionalism and attention to detail.

Happy redesigning!

Related Articles

Continue reading

Lumsden Online

A personal blog focused on software testing, development practices, and continuous learning. Built with Gatsby, React, and a passion for quality engineering.

Connect

© 2026 Lumsden Online. Built with Gatsby, React, and Tailwind CSS.