Skip to content

Migrate portfolio to Astro (content collections, new layout system, blog & contact refresh)#1

Merged
aprilrieger merged 6 commits into
mainfrom
using-astro
May 4, 2026
Merged

Migrate portfolio to Astro (content collections, new layout system, blog & contact refresh)#1
aprilrieger merged 6 commits into
mainfrom
using-astro

Conversation

@aprilrieger
Copy link
Copy Markdown
Owner

Summary

Replaces the Gatsby-based portfolio with a static Astro site: content-driven pages (case studies, blog, bio), shared layout and SEO components, Tailwind styling with Typography for long-form prose, and GitHub Pages–friendly static output. This branch also aligns hero width and chrome across pages, refines blog and contact UX, and trims footer legal/demo links.

Migration highlights

  • Framework: Gatsby → Astro 6 static build (output static by default).
  • Content: Content Collections with a typed schema in src/content.config.ts; case studies and blog posts as MDX, bio and legal as Markdown.
  • Styling: Tailwind CSS 3 via @astrojs/tailwind; @tailwindcss/typography powers the shared Prose wrapper.
  • Authoring: Local dev with npm run dev; production build with npm run builddist/ (unchanged deploy story for GitHub Pages where applicable).
  • Redirects: /about/resume in astro.config.mjs.

Layout & components

  • BaseLayout.astro — document shell, SEO (Seo.astro), header/footer, optional fullWidthMain for edge-to-edge sections (projects carousel).
  • TopHeroCard — shared top-of-page hero-shell (gradient + grid) with consistent aria-labelledby wiring.
  • PageContentColumnmax-w-5xl + horizontal padding for use under fullWidthMain so the hero lines up with the default content column.
  • SocialIconLinks — GitHub / LinkedIn icon links (accessible labels, noopener on external URLs).

Pages & UX

  • Home: Hero + featured work; social icons beside primary CTA.
  • Projects: Full-width horizontal case-study track; hero uses PageContentColumn + TopHeroCard.
  • Resume: Profile hero (eyebrow Resume); PDF CTA top-right; bio in a card + quick links aside; /about redirect to /resume.
  • Blog index & posts: Hero stagger animation; post layout is two columns on large screens — article body in a surface card + sticky Details aside (date, tags, back to blog).
  • Contact: Same hero-shell treatment as other heroes (gradient + grid); typographic rhythm matches blog/projects (eyebrow + title + intro).
  • Footer: Copyright only; removed footer links to design playground, imprint, and privacy (routes may still exist for direct URLs).

References (docs & tools)

Topic Documentation
Astro Astro docs
Configuration Configuration overview
Content Collections Content collections
MDX MDX integration
Tailwind integration Tailwind & Astro
Layouts & composition Layouts
Routing & redirects Redirects
Astro + TypeScript TypeScript
Tailwind CSS Tailwind CSS docs
Typography plugin @tailwindcss/typography
Deploy (static) Deploy your Astro site

How to verify

npm install
npm run build
npm run preview   # optional: smoke-test production build locally

Spot-check: /, /projects, /resume, /blog, a single /blog/... post, and /contact for hero width, two-column blog layout on a wide viewport, and footer content.

Notes for reviewers

  • Large diff is mostly Gatsby removal + new src/ tree and lockfile shrink.
  • Legal/imprint/privacy pages were not deleted in this pass; only footer navigation to them was removed.

@aprilrieger aprilrieger merged commit d4b79f1 into main May 4, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant