Skip to content

ncdorn/ncdorn.github.io

Repository files navigation

README.md

Nick Dorn — Pulmonary-Themed Personal Site (GitHub Pages)

A modern, clean, accessible, and fast static site for Nick Dorn (PhD Candidate, Stanford), themed around the pulmonary circulation. Built with Jekyll using only GitHub Pages-approved plugins.

Highlights

  • Pulmonary tree motif with animated SVG hero (respects prefers-reduced-motion).
  • Data-driven Publications, Projects, Talks via _data/*.yml.
  • Client-side filters (tags/year), accessible components, WCAG-minded.
  • Dark mode, high-contrast, and motion toggles.
  • JSON-LD for Person and ScholarlyArticle, SEO via jekyll-seo-tag.
  • Optional OG image generator (local Node script).
  • Privacy-friendly analytics snippet (disabled by default).

Quick Start (Local)

  1. Install Ruby and Bundler.
  2. bundle install
  3. (Optional) For OG generation: install Node 18+; npm install (see below).
  4. Serve locally: bundle exec jekyll serve --livereload
  5. Open: http://127.0.0.1:4000

Configure your URLs

Edit _config.yml:

  • If using <user>.github.io root:
    • url: "https://<user>.github.io"
    • baseurl: ""
  • If using a project site:
    • url: "https://<user>.github.io"
    • baseurl: "/<repo>"
  • Remove or edit CNAME if you aren’t using a custom domain.

Deploy on GitHub Pages

  1. Create a repo and push all files.
  2. In Settings → Pages, select the main branch and / (root).
  3. Wait for the site to build. Your site will be at url + baseurl.

Replace Resume/CV

  • Replace assets/docs/resume.pdf and assets/docs/cv.pdf with your PDFs (same filenames).
  • Update the HTML mirrors at pages/resume.html and pages/cv.html if needed.

Data Files

  • _data/publications.yml: title, authors, venue, year, doi, pdf, code, slides, poster, abstract, tags
  • _data/projects.yml: name, summary, tech, repo, docs, demo, tags, featured, order
  • _data/talks.yml: title, event, date, location, slides, video, abstract

Optional: Open Graph Image Generator

We include:

  • assets/og/template.html (HTML template)
  • assets/js/og-gen.js (Node script using headless Chromium via Puppeteer)

Usage:

# Install puppeteer locally
npm install
# Render template(s) to PNG into assets/img/
node assets/js/og-gen.js

About

my Github Page

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published