Website Redesign Plan (gchure.bio × brianhie.com)
References: GitHub Issue #1, GitHub Issue #2, GitHub Issue #3
Vision & Architecture
Transform the personal academic website of Igors Dubanevics into a clean, minimalist, human-centered portfolio inspired by: - Griffin Chure (gchure.bio): Centered narrow column (max-width: 580px), crisp monochrome typography (Geist / Geist Mono at 12px ultra-compact scale), and a 180px left profile column with photo, circular social links, and experience list. - Brian Hie (brianhie.com/bookshelf): Stripped-down aesthetic shelves displaying personal culture (books, music, movies) using a clean 4-column hairline grid. - Dr. Gang He’s Quarto Academic Template: Solid academic foundation with structured listings, publications, and teaching entries.
Roadmap & Milestones
-
- Establish design requirements: 740px container, Geist typography, clean navigation, profile column, and multi-media shelf.
-
- Update
_quarto.yml: remove duplicate brand title, streamline navbar right to GitHub source repository, addBeyond Labnav item, update footer attribution and HTML theme (cosmo+custom.scss). - Update
.github/workflows/publish.yml: settinytex: falsefor ultra-fast GitHub Pages deployments.
- Update
-
- Define SCSS defaults: Geist + Geist Mono font imports, typography variables, monochrome color palette.
- Constrain
.navbar-container,#quarto-content, and.nav-footertomax-width: 740px. - Implement
.about-grid,.profile-section,.social-button, and.experience-sectionstyles. - Implement
.snapshot-strip4-image grid below the homepage bio. - Implement
.shelf-grid,.shelf-cell, and.shelf-cover-wrapwith aspect ratios (2:3for books/movies,1:1for music). - Scope title block suppression so only
index.qmdhides the header block while subpages display clean page titles.
-
- Replace Trestles about layout with custom two-column
.about-grid. - Left column: Portrait image, circular social icons (GitHub, Google Scholar, ORCID, LinkedIn), and education/experience timeline.
- Right column: Bio narrative detailing research in molecular evolution, fitness landscapes, and scientific computing.
- Bottom: Responsive 4-photo snapshot strip.
- Replace Trestles about layout with custom two-column
-
- Custom EJS listing template (
files/includes/shelf.ejs). - Local artwork covers in
files/images/shelf/to guarantee zero broken external links. - Structured YAML data files:
data/books.yml,data/music.yml, anddata/movies.yml. - Curated initial items across literature, science, cinema, and music.
- Custom EJS listing template (
-
- Render full site with
quarto renderand verify build status. - Inspect responsiveness and layout integrity.
- Render full site with
-
- Rename
beyond-lab.qmdtopersonal.qmdand update navigation and page titles. - Fix homepage HTML rendering by wrapping
index.qmdmarkup inside a raw{=html}block and removingpage-layout: full, eliminating rogue<pre><code>code wrappers around.social-links,.experience-section, and.snapshot-strip. - Right-align navbar links (
Research,Teaching,Blog,Personal), disable search bar (search: false), and implement an ultra-minimal single-line centered footer with project source link. - Align typography and container scale to
gchure.bio: base font size 15px ($font-size-base: 0.9375rem;), container width constrained to 680px, monospace uppercase navbar and headings, justified bio text, and compact experience items. - Verify complete site build via
quarto render.
- Rename
-
- Constrain
.navbar-container,#quarto-content, and.nav-footer(including navbar and footer hairlines) tomax-width: 580px. - Reduce site prose to
12px(0.75rem), leftProfile Columnto180px(28pxsocial buttons), and replace Quarto’s default Research listing with a compact single-column EJS template (files/includes/publications.ejs). - Disable navbar collapsing (
collapse: falsein_quarto.yml+ flex overrides incustom.scss) soIgors Dubanevicsstays flush-left andResearch · Teaching · Blog · Personalstay flush-right on a single line at all screen sizes with zero dropdowns. - Remove
Snapshot Stripfromindex.qmd,custom.scss, andCONTEXT.md. - Eliminate horizontal/vertical page-switch jumps (
scrollbar-gutter: stable; overflow-y: scroll+ fixed46pxheader/body offset) and neutralizequarto-nav.js’s100vhinlinemin-heightso the footer is visible without scrolling.
- Constrain