Homepage Redesign Implementation Plan

Homepage Redesign Implementation Plan

For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (- [ ]) syntax for tracking.

Goal: Implement the approved homepage redesign on / without changing the layout or behavior of other pages.

Architecture: Add a homepage-specific layout path so / can suppress the masthead, sidebar, and page title without rewriting the rest of the theme. Rewrite _pages/about.md into structured homepage sections, then layer homepage-scoped SCSS on top of the existing Jekyll pipeline so the design changes stay isolated to /.

Tech Stack: Jekyll, Liquid layouts, SCSS, GitHub Pages gem bundle, shell smoke checks, Playwright CLI for local visual verification


Preflight

  • Execute this plan in a dedicated git worktree before touching homepage files.
  • Run bundle install once before Task 1 if bundle exec jekyll build fails with bundler: command not found: jekyll.
  • No JavaScript changes are expected for this redesign.

File Map

  • Create: scripts/check-homepage-shell.sh Purpose: Build the site and assert homepage chrome is removed on / while a non-home page still keeps the theme masthead.

  • Create: scripts/check-homepage-content.sh Purpose: Build the site and assert the new homepage sections and labels are present in generated HTML.

  • Create: _layouts/homepage.html Purpose: Homepage-only layout that renders the approved single-column shell without the default page header or sidebar.

  • Create: _sass/_homepage.scss Purpose: Homepage-only visual rules for spacing, typography, hero layout, research bullets, and compact publications.

  • Modify: _layouts/default.html Purpose: Allow homepage rendering to suppress the masthead when the page opts out.

  • Modify: _pages/about.md Purpose: Switch the homepage to the new layout and replace the current prose with the approved section structure.

  • Modify: assets/css/main.scss Purpose: Import the homepage partial into the compiled stylesheet.

Task 1: Isolate Homepage Chrome

Files:

  • Create: scripts/check-homepage-shell.sh
  • Create: _layouts/homepage.html
  • Modify: _layouts/default.html
  • Modify: _pages/about.md
  • Test: scripts/check-homepage-shell.sh

  • Step 1: Write the failing homepage shell smoke check
#!/usr/bin/env bash
set -euo pipefail

bundle exec jekyll build >/tmp/homepage-shell-check.log

HOME_HTML="_site/index.html"
PUBS_HTML="_site/publications/index.html"

if rg -q '<div class="masthead">' "$HOME_HTML"; then
  echo "FAIL: homepage still renders masthead"
  exit 1
fi

if rg -q 'class="sidebar sticky"' "$HOME_HTML"; then
  echo "FAIL: homepage still renders sidebar author card"
  exit 1
fi

if rg -q 'class="page__title"' "$HOME_HTML"; then
  echo "FAIL: homepage still renders page title"
  exit 1
fi

if ! rg -q '<div class="masthead">' "$PUBS_HTML"; then
  echo "FAIL: publications page lost shared masthead"
  exit 1
fi

echo "PASS: homepage chrome isolated"
  • Step 2: Run the smoke check to verify it fails on the current homepage

Run: bash scripts/check-homepage-shell.sh Expected: FAIL because the current homepage still includes the masthead, sidebar, and page title.

  • Step 3: Implement the minimal homepage-only layout isolation

Create _layouts/homepage.html as a simple page shell:

---
layout: default
---



<div id="main" class="home-page" role="main">
  <article class="page page--home">
    <div class="page__inner-wrap">
      <section class="page__content home-content" itemprop="text">
        

<!doctype html>
<html lang="en" class="no-js">
  <head>
    

<meta charset="utf-8">



<!-- begin SEO -->









<title>CLAUDE.md - Xu Chen</title>







<meta property="og:locale" content="en-US">
<meta property="og:site_name" content="Xu Chen">
<meta property="og:title" content="CLAUDE.md">


  <link rel="canonical" href="https://Thisislegit.github.io/CLAUDE/">
  <meta property="og:url" content="https://Thisislegit.github.io/CLAUDE/">







  

  












  <script type="application/ld+json">
    {
      "@context" : "http://schema.org",
      "@type" : "Person",
      "name" : "Xu Chen",
      "url" : "https://Thisislegit.github.io",
      "sameAs" : null
    }
  </script>






<!-- end SEO -->


<link href="https://Thisislegit.github.io/feed.xml" type="application/atom+xml" rel="alternate" title="Xu Chen Feed">

<!-- http://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<script>
  document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
</script>

<!-- For all browsers -->
<link rel="stylesheet" href="https://Thisislegit.github.io/assets/css/main.css">

<meta http-equiv="cleartype" content="on">
    

<!-- start custom head snippets -->

<link rel="apple-touch-icon" sizes="57x57" href="https://Thisislegit.github.io/images/apple-touch-icon-57x57.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="60x60" href="https://Thisislegit.github.io/images/apple-touch-icon-60x60.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="72x72" href="https://Thisislegit.github.io/images/apple-touch-icon-72x72.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="76x76" href="https://Thisislegit.github.io/images/apple-touch-icon-76x76.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="114x114" href="https://Thisislegit.github.io/images/apple-touch-icon-114x114.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="120x120" href="https://Thisislegit.github.io/images/apple-touch-icon-120x120.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="144x144" href="https://Thisislegit.github.io/images/apple-touch-icon-144x144.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="152x152" href="https://Thisislegit.github.io/images/apple-touch-icon-152x152.png?v=M44lzPylqQ">
<link rel="apple-touch-icon" sizes="180x180" href="https://Thisislegit.github.io/images/apple-touch-icon-180x180.png?v=M44lzPylqQ">
<link rel="icon" type="image/png" href="https://Thisislegit.github.io/images/favicon-32x32.png?v=M44lzPylqQ" sizes="32x32">
<link rel="icon" type="image/png" href="https://Thisislegit.github.io/images/android-chrome-192x192.png?v=M44lzPylqQ" sizes="192x192">
<link rel="icon" type="image/png" href="https://Thisislegit.github.io/images/favicon-96x96.png?v=M44lzPylqQ" sizes="96x96">
<link rel="icon" type="image/png" href="https://Thisislegit.github.io/images/favicon-16x16.png?v=M44lzPylqQ" sizes="16x16">
<link rel="manifest" href="https://Thisislegit.github.io/images/manifest.json?v=M44lzPylqQ">
<link rel="mask-icon" href="https://Thisislegit.github.io/images/safari-pinned-tab.svg?v=M44lzPylqQ" color="#000000">
<link rel="shortcut icon" href="/images/favicon.ico?v=M44lzPylqQ">
<meta name="msapplication-TileColor" content="#000000">
<meta name="msapplication-TileImage" content="https://Thisislegit.github.io/images/mstile-144x144.png?v=M44lzPylqQ">
<meta name="msapplication-config" content="https://Thisislegit.github.io/images/browserconfig.xml?v=M44lzPylqQ">
<meta name="theme-color" content="#ffffff">
<link rel="stylesheet" href="https://Thisislegit.github.io/assets/css/academicons.css"/>

<script type="text/x-mathjax-config"> MathJax.Hub.Config({ TeX: { equationNumbers: { autoNumber: "all" } } }); </script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    tex2jax: {
      inlineMath: [ ['$','$'], ["\\(","\\)"] ],
      processEscapes: true
    }
  });
</script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/latest.js?config=TeX-MML-AM_CHTML' async></script>

<!-- end custom head snippets -->

  </head>

  <body>

    <!--[if lt IE 9]>
<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
<![endif]-->
    
      

<div class="masthead">
  <div class="masthead__inner-wrap">
    <div class="masthead__menu">
      <nav id="site-nav" class="greedy-nav">
        <button><div class="navicon"></div></button>
        <ul class="visible-links">
          <li class="masthead__menu-item masthead__menu-item--lg"><a href="https://Thisislegit.github.io/">Xu Chen</a></li>
          
        </ul>
        <ul class="hidden-links hidden"></ul>
      </nav>
    </div>
  </div>
</div>
    

    





<div id="main" role="main">
  


  <div class="sidebar sticky">
  



<div itemscope itemtype="http://schema.org/Person">

  <div class="author__avatar">
    
    	<img src="https://Thisislegit.github.io/images/xuchen_profile.jpg" class="author__avatar" alt="Xu Chen">
    
  </div>

  <div class="author__content">
    <h3 class="author__name">Xu Chen</h3>
    <p class="author__bio">Ph.D. student at University of Electronic Science and Technology of China</p>
  </div>

  <div class="author__urls-wrapper">
    <button class="btn btn--inverse">Follow</button>
    <ul class="author__urls social-icons">
      
        <li><i class="fa fa-fw fa-map-marker" aria-hidden="true"></i> Chengdu, China</li>
      
      
      
      
        <li><a href="mailto:XUCHEN.2019@outlook.com"><i class="fas fa-fw fa-envelope" aria-hidden="true"></i> Email</a></li>
      
      
       
      
      <li><a href="https://dblp.org/pid/83/6331-23.html"><i class="ai ai-dblp-square ai-fw"></i> DBLP</a></li>
      
      
      
      
      
      
      
      
      
      
        <li><a href="https://github.com/Thisislegit"><i class="fab fa-fw fa-github" aria-hidden="true"></i> Github</a></li>
      
      
      
      
      
      
      
      
      
      
      
      
      
      
        <li><a href="https://scholar.google.com/citations?user=i6heNjgAAAAJ&hl"><i class="fas fa-fw fa-graduation-cap"></i> Google Scholar</a></li>
      
      
      
      
      
    </ul>
  </div>
</div>

  
  </div>


  <article class="page" itemscope itemtype="http://schema.org/CreativeWork">
    <meta itemprop="headline" content="CLAUDE.md">
    
    
    

    <div class="page__inner-wrap">
      
        <header>
          <h1 class="page__title" itemprop="headline">CLAUDE.md
</h1>
          
        
        
        
        
             
        
    
        </header>
      

      <section class="page__content" itemprop="text">
        <h1 id="claudemd">CLAUDE.md</h1>

<p>This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.</p>

<h2 id="overview">Overview</h2>

<p>This is a Jekyll-based academic website built on GitHub Pages using the academicpages template (forked from Minimal Mistakes Jekyll Theme). It serves as a personal academic portfolio for Xu Chen, a Ph.D. student at University of Electronic Science and Technology of China.</p>

<h2 id="development-commands">Development Commands</h2>

<h3 id="local-development">Local Development</h3>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c"># Install Ruby dependencies</span>
bundle <span class="nb">install</span>

<span class="c"># Clean up directory (if needed)</span>
bundle clean

<span class="c"># Serve locally with live reload</span>
bundle <span class="nb">exec </span>jekyll serve
</code></pre></div></div>

<p>The local server will automatically rebuild and refresh pages on change at <code class="language-plaintext highlighter-rouge">localhost:4000</code>.</p>

<h3 id="build-assets">Build Assets</h3>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c"># Build minified JavaScript</span>
npm run build:js

<span class="c"># Watch for JS changes and rebuild</span>
npm run watch:js
</code></pre></div></div>

<h2 id="site-architecture">Site Architecture</h2>

<h3 id="jekyll-structure">Jekyll Structure</h3>
<ul>
  <li><code class="language-plaintext highlighter-rouge">_config.yml</code> - Main site configuration</li>
  <li><code class="language-plaintext highlighter-rouge">_config.dev.yml</code> - Development-specific overrides</li>
  <li><code class="language-plaintext highlighter-rouge">_layouts/</code> - Page templates (default, single, archive, talk, etc.)</li>
  <li><code class="language-plaintext highlighter-rouge">_includes/</code> - Reusable components and partials</li>
  <li><code class="language-plaintext highlighter-rouge">_sass/</code> - SCSS stylesheets</li>
  <li><code class="language-plaintext highlighter-rouge">_data/</code> - Site data files (navigation, UI text, comments)</li>
</ul>

<h3 id="content-collections">Content Collections</h3>
<p>The site uses Jekyll collections for organized content:</p>
<ul>
  <li><code class="language-plaintext highlighter-rouge">_pages/</code> - Static pages (about, CV, publications, etc.)</li>
  <li><code class="language-plaintext highlighter-rouge">_posts/</code> - Blog posts</li>
  <li><code class="language-plaintext highlighter-rouge">_publications/</code> - Academic publications</li>
  <li><code class="language-plaintext highlighter-rouge">_talks/</code> - Conference talks and presentations</li>
  <li><code class="language-plaintext highlighter-rouge">_teaching/</code> - Teaching experience</li>
  <li><code class="language-plaintext highlighter-rouge">_portfolio/</code> - Portfolio items</li>
</ul>

<h3 id="content-generation">Content Generation</h3>
<p>The <code class="language-plaintext highlighter-rouge">markdown_generator/</code> folder contains Jupyter notebooks and Python scripts to generate markdown files from TSV data for publications and talks. This allows bulk import of structured academic content.</p>

<h3 id="key-configuration">Key Configuration</h3>
<ul>
  <li>Site owner: Xu Chen (Thisislegit.github.io)</li>
  <li>Theme: Modified Minimal Mistakes</li>
  <li>Analytics: Google Universal Analytics</li>
  <li>Collections have specific permalinks and layouts defined in <code class="language-plaintext highlighter-rouge">_config.yml</code></li>
  <li>Author profile data configured in <code class="language-plaintext highlighter-rouge">_config.yml</code> under <code class="language-plaintext highlighter-rouge">author:</code></li>
</ul>

<h3 id="dependencies">Dependencies</h3>
<ul>
  <li>Ruby gems managed via Gemfile (github-pages, jekyll-feed, jekyll-sitemap, hawkins)</li>
  <li>JavaScript dependencies managed via package.json for build tools</li>
  <li>Uses GitHub Pages compatible plugins only</li>
</ul>

        
      </section>

      <footer class="page__meta">
        
        




      </footer>

      

      


    </div>

    
  </article>

  
  
</div>


    <div class="page__footer">
      <footer>
        <!-- start custom footer snippets -->
<a href="/sitemap/">Sitemap</a>
<!-- end custom footer snippets -->

        

<div class="page__footer-follow">
  <ul class="social-icons">
    
      <li><strong>Follow:</strong></li>
    
    
    
    
      <li><a href="http://github.com/Thisislegit"><i class="fab fa-github" aria-hidden="true"></i> GitHub</a></li>
    
    
    <li><a href="https://Thisislegit.github.io/feed.xml"><i class="fa fa-fw fa-rss-square" aria-hidden="true"></i> Feed</a></li>
  </ul>
</div>

<div class="page__footer-copyright">&copy; 2026 Xu Chen. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://github.com/academicpages/academicpages.github.io">AcademicPages</a>, a fork of <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>

      </footer>
    </div>

    <script src="https://Thisislegit.github.io/assets/js/main.min.js"></script>




  <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', '', 'auto');
  ga('send', 'pageview');
</script>






  </body>
</html>

      </section>
    </div>
  </article>
</div>

Update _layouts/default.html to conditionally skip the masthead:


  

<div class="masthead">
  <div class="masthead__inner-wrap">
    <div class="masthead__menu">
      <nav id="site-nav" class="greedy-nav">
        <button><div class="navicon"></div></button>
        <ul class="visible-links">
          <li class="masthead__menu-item masthead__menu-item--lg"><a href="https://Thisislegit.github.io/">Xu Chen</a></li>
          
        </ul>
        <ul class="hidden-links hidden"></ul>
      </nav>
    </div>
  </div>
</div>

Update the homepage front matter in _pages/about.md:

layout: homepage
author_profile: false
hide_masthead: true
  • Step 4: Re-run the build and smoke check

Run: bundle exec jekyll build && bash scripts/check-homepage-shell.sh Expected: PASS with the homepage missing chrome and /publications/ still keeping the masthead.

  • Step 5: Commit
git add scripts/check-homepage-shell.sh _layouts/homepage.html _layouts/default.html _pages/about.md
git commit -m "feat: isolate homepage layout from theme chrome"

Task 2: Rewrite Homepage Content Into Approved Sections

Files:

  • Create: scripts/check-homepage-content.sh
  • Modify: _pages/about.md
  • Test: scripts/check-homepage-content.sh

  • Step 1: Write the failing homepage content smoke check
#!/usr/bin/env bash
set -euo pipefail

bundle exec jekyll build >/tmp/homepage-content-check.log

HOME_HTML="_site/index.html"

rg -q 'class="home-hero"' "$HOME_HTML" || { echo "FAIL: missing hero section"; exit 1; }
rg -q 'class="home-bio"' "$HOME_HTML" || { echo "FAIL: missing bio section"; exit 1; }
rg -q 'class="home-research"' "$HOME_HTML" || { echo "FAIL: missing research section"; exit 1; }
rg -q 'class="home-publications"' "$HOME_HTML" || { echo "FAIL: missing publications section"; exit 1; }
rg -q '>Publications<' "$HOME_HTML" || { echo "FAIL: missing Publications heading"; exit 1; }
rg -q '>Recent Work<' "$HOME_HTML" || { echo "FAIL: missing Recent Work group"; exit 1; }
rg -q '>Earlier Work<' "$HOME_HTML" || { echo "FAIL: missing Earlier Work group"; exit 1; }

if rg -q '>Selected Papers<' "$HOME_HTML"; then
  echo "FAIL: old Selected Papers heading still present"
  exit 1
fi

PUB_COUNT="$(rg -o 'class=\"publication\"' "$HOME_HTML" | wc -l | tr -d ' ')"
if [ "$PUB_COUNT" -ne 12 ]; then
  echo "FAIL: expected 12 publication entries, found $PUB_COUNT"
  exit 1
fi

echo "PASS: homepage content sections rendered"
  • Step 2: Run the content smoke check to verify it fails

Run: bash scripts/check-homepage-content.sh Expected: FAIL because the current homepage content has not yet been rewritten into the new section structure.

  • Step 3: Rewrite _pages/about.md using semantic homepage sections

Use HTML blocks inside the markdown file so the homepage structure is explicit and styleable:

<section class="home-hero">
  <img class="home-hero__avatar" src="/images/xuchen_profile.jpg" alt="Xu Chen">
  <div class="home-hero__body">
    <h1 class="home-hero__name">Xu Chen</h1>
    <p class="home-hero__tagline">Ph.D. student at UESTC working on machine learning for data systems.</p>
    <p class="home-hero__links">
      <a href="mailto:XUCHEN.2019@outlook.com">Email</a>
      <a href="https://scholar.google.com/citations?user=i6heNjgAAAAJ&hl">Google Scholar</a>
      <a href="https://github.com/Thisislegit">GitHub</a>
    </p>
  </div>
</section>

<section class="home-bio">
  <h2>About</h2>
  <p>...</p>
</section>

<section class="home-research">
  <h2>Research Interests</h2>
  <p>...</p>
  <ul>
    <li>...</li>
    <li>...</li>
    <li>...</li>
  </ul>
</section>

<section class="home-publications">
  <h2>Publications</h2>
  <div class="publication-group">
    <h3>Recent Work</h3>
    <article class="publication">
      <p class="publication__title"><a href="...">Paper title</a></p>
      <p class="publication__meta"><strong>Xu Chen</strong>, Coauthor, <em>Venue</em>, 2025.</p>
    </article>
  </div>
  <div class="publication-group">
    <h3>Earlier Work</h3>
    <article class="publication">
      <p class="publication__title">Paper title</p>
      <p class="publication__meta">Author list, <em>Venue</em>, 2022.</p>
    </article>
  </div>
</section>

Content rules while rewriting:

  • keep the biography to one tighter paragraph
  • make the hero tagline newly written from existing facts
  • keep Recent Work for 2023 and newer, Earlier Work for 2022 and older
  • keep every publication on the homepage
  • wrap every publication in <article class="publication">
  • format each publication as title line + metadata line using .publication__title and .publication__meta

  • Step 4: Re-run the build and content smoke check

Run: bundle exec jekyll build && bash scripts/check-homepage-content.sh Expected: PASS with all homepage section markers present and the old Selected Papers label gone.

  • Step 5: Commit
git add scripts/check-homepage-content.sh _pages/about.md
git commit -m "feat: rewrite homepage content into structured sections"

Task 3: Add Homepage-Scoped Styles And Verify Visually

Files:

  • Create: _sass/_homepage.scss
  • Modify: assets/css/main.scss
  • Test: bundle exec jekyll build, bash scripts/check-homepage-shell.sh, bash scripts/check-homepage-content.sh

  • Step 1: Capture a baseline local preview before the style pass

Run:

bundle exec jekyll serve --host 127.0.0.1 --port 4000

Then open / in Playwright at desktop and mobile widths. Expected: the structure is correct after Tasks 1 and 2, but the page still looks too close to the default theme.

  • Step 2: Implement homepage-only SCSS

Create _sass/_homepage.scss with rules for:

.home-page {
  margin-top: 0;
  max-width: 100%;
  background: #fff;
}

.home-content {
  max-width: 42rem;
  margin: 0 auto;
  padding: 3rem 1.5rem 4rem;
}

.home-hero {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
}

.home-publications .publication {
  padding: 0.9rem 0;
  border-top: 1px solid #ececec;
}

.publication__title,
.publication__meta {
  margin: 0;
}

Style goals:

  • pure white background
  • restrained serif/sans hierarchy
  • no card treatment
  • thin gray dividers only
  • tighter publication rhythm
  • responsive single column on mobile

  • Step 3: Import the new partial into assets/css/main.scss

Add:

@import "homepage";

after the existing page/archive/sidebar imports so the homepage rules compile into assets/css/main.css.

  • Step 4: Rebuild and run the smoke checks

Run: bundle exec jekyll build && bash scripts/check-homepage-shell.sh && bash scripts/check-homepage-content.sh Expected: PASS for both smoke scripts and no SCSS compilation errors.

  • Step 5: Run desktop and mobile visual verification

Check these states in the local preview:

  • homepage shows a pure white background
  • homepage is a narrow single column
  • avatar, name, and inline links stay balanced at desktop width
  • mobile layout collapses cleanly without horizontal overflow
  • publication entries remain readable when titles wrap
  • /publications/ still keeps the original shared theme chrome

  • Step 6: Commit
git add _sass/_homepage.scss assets/css/main.scss
git commit -m "feat: style homepage redesign"

Task 4: Final Regression Sweep

Files:

  • Modify: _pages/about.md or _sass/_homepage.scss only if the final preview reveals minor spacing issues
  • Test: bundle exec jekyll build, smoke scripts, local preview

  • Step 1: Run the final build and both smoke scripts

Run:

bundle exec jekyll build
bash scripts/check-homepage-shell.sh
bash scripts/check-homepage-content.sh

Expected: All commands pass.

  • Step 2: Verify one homepage view and one non-homepage view in the browser

Review:

  • http://127.0.0.1:4000/
  • http://127.0.0.1:4000/publications/

Expected: homepage matches the approved design direction and non-homepage layout remains unchanged.

  • Step 3: If needed, apply only minor spacing or typography polish

Allowed polish:

  • adjust hero spacing
  • tune publication row spacing
  • refine heading margins

Do not expand scope beyond homepage visual polish.

  • Step 4: Re-run the build and smoke scripts if any polish changed files

Run: bundle exec jekyll build && bash scripts/check-homepage-shell.sh && bash scripts/check-homepage-content.sh Expected: PASS.

  • Step 5: Commit
git add _pages/about.md _sass/_homepage.scss
git commit -m "chore: finalize homepage redesign polish"