This repository contains the source code for the lab's website, built with Pandoc and deployed to GitHub Pages.
.
├── Makefile # Build commands
├── README.md # This file
├── .gitignore # Files to exclude from git
├── src/ # Source files
│ ├── index.md # Homepage
│ ├── papers.md # Publications page
│ ├── people.md # Team page
│ ├── 404.md # Custom 404 error page
│ ├── template.html # HTML template for all pages
│ ├── style.css # Website styling
│ └── imgs/ # Images and icons
└── build/ # Generated website for local preview (git-ignored)
macOS:
brew install pandocLinux (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install pandocLinux (other distributions): Download from Pandoc releases:
wget https://github.com/jgm/pandoc/releases/download/3.1.11/pandoc-3.1.11-1-amd64.deb
sudo dpkg -i pandoc-3.1.11-1-amd64.debWindows: Download the installer from pandoc.org
pandoc --versionmake buildThis converts all .md files in src/ to HTML and copies assets to build/.
make serveThis builds the website and starts a local server at http://localhost:8000.
Open your browser and navigate to:
- Homepage:
http://localhost:8000/index.html - Papers:
http://localhost:8000/papers.html - People:
http://localhost:8000/people.html
Press Ctrl+C to stop the server.
make cleanRemoves all generated files from build/.
-
Edit the markdown files in
src/:index.md- Homepage with bio sectionpapers.md- Publications listpeople.md- Team members
-
Save your changes
-
Run
make serveto preview
Place images in src/imgs/ and reference them in markdown:
Edit src/style.css to change the website's appearance. Changes take effect on next build.
- Enable GitHub Pages:
- Go to repository Settings → Pages
- Source: "Deploy from a branch"
- Branch:
gh-pages, folder:/ (root) - Click Save
Your site will be available at:
- Organization site:
https://orgname.github.io/(if repo is namedorgname.github.io) - Project site:
https://orgname.github.io/repo-name/(for other repo names)
To publish changes to the website:
-
Edit content in
src/files -
Test locally:
make serve
-
Commit changes:
git add . git commit -m "Describe your changes"
-
Push to GitHub:
git push
The website is automatically deployed via GitHub Actions. Changes appear online within 1-2 minutes. You can monitor deployment progress in the "Actions" tab of your GitHub repository.
Install Pandoc following the instructions in Prerequisites section.
Another process is using port 8000. Either stop that process or change the port:
cd build && python3 -m http.server 8080- Wait 1-2 minutes for GitHub Actions to complete the deployment
- Hard refresh your browser (Ctrl+Shift+R or Cmd+Shift+R)
- Check the Actions tab on GitHub for deployment status
If your repo is NOT named orgname.github.io, you may need to update paths in src/template.html:
<link rel="stylesheet" href="/repo-name/style.css" />make build- Build the websitemake serve- Build and serve locally at http://localhost:8000make clean- Remove all built filesmake help- Show available commands