Skip to content

Repository files navigation

Adam Haroon Personal Academic Website

Static personal research website for Adam Haroon (Iowa State University), covering trustworthy perception and control for autonomous systems. The design language follows the "Assured Autonomy Across the Stack" research talk: deep navy, teal (perception), amber (control), pillars / thread / hinge motifs.

No build tools required. Pure HTML + CSS + vanilla JS, ready to deploy on GitHub Pages as-is.

Structure

├── index.html              # Homepage: hero, thread motif, pillars, flagship results, by-the-numbers
├── about.html              # Long-form bio, philosophy, collaborations, background
├── research.html           # Three pillars + "the hinge" pipeline diagram
├── projects.html           # Selected project cards, grouped by pillar
├── projects/               # 8 individual project pages
├── publications.html       # Rendered from data/publications.json (filters + BibTeX, clickable entries)
├── talks.html              # 12 talks with slide-styled thumbnails
├── cv.html                 # Rendered from cv/Adam_Haroon_CV.md
├── contact.html
├── assets/
│   ├── css/style.css       # All styling (light/dark themes)
│   ├── js/main.js          # Theme toggle, nav, publications renderer, Markdown CV renderer
│   ├── img/                # Favicon, portrait, project figures
│   └── video/              # Project videos (web-compressed MP4)
├── data/publications.json  # Single source of truth for the publications list
├── cv/Adam_Haroon_CV.md    # Single source of truth for the CV page
├── .nojekyll               # Tells GitHub Pages to skip Jekyll processing
└── CNAME.example           # Rename to CNAME (containing only your domain) for a custom domain

Editing content

  • Publications: edit data/publications.json. Each entry drives the list, filters, venue pill, auto-generated BibTeX, and the click-through link (doi first, then url). Statuses: published, accepted, under-review, in-preparation.
  • CV: edit cv/Adam_Haroon_CV.md. Headings use ### Position Title | dates for the title/date line, followed by #### Institution on its own line, then bullet points.
  • Project figures: images live in assets/img/fig-*.png; the balloon-swarm video lives in assets/video/fig-hab-marl.mp4. The Safe Preference-Based RL page has a commented-out figure block ready to enable once fig-safe-pbrl.png exists.
  • Videos: keep them web-compressed (H.264 MP4, roughly under 25 MB). GitHub rejects files over 100 MB.

Preview locally

Browsers block fetch() on file:// URLs, so the Publications and CV pages need a local HTTP server:

cd website
python3 -m http.server 8000
# open http://localhost:8000

Deploy to GitHub Pages

  1. Create the repo. For a https://<username>.github.io root site, name the repo exactly <username>.github.io. Any other name (e.g. personal-website) serves at https://<username>.github.io/<repo>/. Both work; this site uses only relative paths.

  2. Push the site:

    cd website
    git init -b main
    git add .
    git commit -m "Initial personal website"
    git remote add origin https://github.com/<username>/<repo>.git
    git push -u origin main

    reference/ (source PDFs) is excluded by .gitignore. The resume PDF contains a personal phone number and shouldn't be published.

  3. Enable Pages. On GitHub: Settings → Pages → Build and deployment, set Source to Deploy from a branch, Branch main, folder / (root), then Save. The site goes live in 1-2 minutes at the URL shown at the top of that page.

  4. Custom domain (optional). Rename CNAME.example to CNAME and put your domain in it (one line, nothing else), commit and push. Then at your DNS provider add a CNAME record pointing www to <username>.github.io, and enter the domain under Settings → Pages → Custom domain. Enable Enforce HTTPS once the certificate is issued.

  5. Update the site by committing and pushing; Pages redeploys automatically:

    git add -A && git commit -m "Update publications" && git push

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages