This is the repository for the Goodman Lab website, built using Hugo - a fast and modern static site generator. The site uses the Hugo Scroll theme for its single-page scrolling design.
The main content of the website is written in Markdown files located in:
content/homepage/- Contains the main sections of the homepagecontent/- Contains any additional standalone pages
Key configuration files:
hugo.toml- Main configuration file for the websitestatic/- Directory for images and other static fileslayouts/- Custom layout templates (if any)
- Install Hugo (Extended version) from https://gohugo.io/installation/
- On Mac:
brew install hugo - On Windows:
choco install hugo-extended - On Linux:
sudo snap install hugo
- On Mac:
- Clone this repository:
git clone --recursive https://github.com/dbg-lab/dbg-lab.github.io.git
cd dbg-lab.github.io- Start the local development server:
hugo server -D- View the site at http://localhost:1313/
The site will automatically update as you make changes to the content.
To edit the main sections of the website, modify the Markdown files in content/homepage/. Each section is a separate file, for example:
opener.md- Welcome sectioncontact.md- Contact informationpublications.md- Publications list
- Create a new Markdown file in
content/homepage/ - Include the following front matter at the top:
---
title: "Your Section Title"
weight: 5 # Controls order on page (higher numbers appear lower)
header_menu: true # Include in navigation menu
---- Add the section content below the front matter.
The website's publication list is automatically generated from structured data files:
- Source files:
cv/bib/citations.bib- BibTeX database of publications for the lab, linked from dbg's CV repo
- Data files (generated):
data/publications.yaml- Complete publication listdata/selected_publications.yaml- Curated list of highlighted publications
- Add new publications to
cv/bib/citations.bibin BibTeX format - Run the publication conversion scripts in order:
./scripts/bib_to_yaml.py cv/bib/citations.bib ../data/publications.yaml # Converts CV bibtex to YAML
./scripts/select_publications.py ../data/publications.yaml ../data/selected_publications.yaml # Creates selected pubs- The publications will automatically appear on the website through the
publicationsshortcode:
{{< publications >}} # Displays all publications
{{< selected-publications >}} # Displays only selected publicationsPublications can be customized in the YAML files with the following fields:
pdf: Link to PDF file (stored instatic/pub_pdfs/)doi: DOI identifier for automatic linkinghighlight: Highlights author name (used for lab members)selected: Marks publication for inclusion in selected publications list
For detailed examples of the YAML format, see the existing entries in data/publications.yaml.
The site automatically deploys to GitHub Pages when changes are pushed to the main branch. Please make sure to pull the latest changes from the main branch before pushing any changes and let dbg know if you're making any changes to the website.
Contact lab admin for assistance with website maintenance and updates.