Dezine Zync

Technical Design Specification: High-Fidelity macOS Web Migration

This document outlines the technical architecture and design principles used to migrate a Jekyll/Eleventy blog from a remote theme (e.g., LaunchKit) to a custom, high-fidelity SCSS framework inspired by modern and classic Macintosh Human Interface Guidelines (HIG), specifically modeled after Mario Guzman’s design language.

1. Architectural Strategy

The migration follows a “decoupled” approach, moving all styling logic from external dependencies to a local, modular SCSS structure.

SCSS Directory Structure

2. Design Principles

The design adheres to the following core tenets:

3. Layout Primitives

.container

The foundational wrapper for content alignment.

.readable

A specialized modifier for long-form text content.

.grid

A flexible flexbox-based utility for horizontal alignment.

4. Typography System

Font Stack

Prioritizes Apple’s system fonts for a “native” feel.

font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif;

Hierarchy & Weights

5. Component Specifications

Header & Navigation

Article Content (.article-content)

Horizontal Rules (hr)

6. Color System (CSS Variables)

Utilizes semantic CSS variables for effortless Light and Dark mode transitions.

Token Light Mode Dark Mode Purpose
--dz-brand-color #007aff #0a84ff Links, accents, borders
--dz-background-color #ffffff #1c1c1e Primary page background
--dz-title-color #1c1c1e #f2f2f7 Headers and primary text
--dz-subtitle-color #8e8e93 #8e8e93 Meta text and descriptions
--dz-border-color #d1d1d6 #3a3a3c Separators and input borders

7. Migration Checklist for LLM Agents

When performing a similar migration for a new site:

  1. Audit Layouts: Identify where .container, .readable, and .no-style classes are used.
  2. Define Variables: Establish the core color palette and font stacks in variables.scss.
  3. Bootstrap Base: Implement the .container and .readable primitives in _base.scss.
  4. Refactor Components: Move component-specific logic (e.g., navigation, post lists) into dedicated layout files.
  5. Remove Dependencies: Deactivate the legacy theme (e.g., remove remote_theme from config).
  6. Surgical Cleanup: Remove legacy classes like no-style from HTML layouts to allow the new SCSS to propagate.
  7. Validate: Verify the vertical rhythm, responsive breakpoints, and Dark Mode switching.