A Hugo site using the Hextra theme, serving as the canonical reference for information about Alex Kasper.
- Hugo Extended (v0.123.0 or later) - https://gohugo.io/installation/
- Git
-
Clone this repository
git clone https://github.com/yourusername/alexkasper-site.git cd alexkasper-site -
Add Hextra theme as a Git submodule
git submodule add https://github.com/imfing/hextra.git themes/hextra
-
Run the development server
hugo server -D
-
Visit http://localhost:1313
Instead of git submodule, you can use Hugo Modules:
# Initialize Hugo module
hugo mod init github.com/yourusername/alexkasper-site
# Update hugo.yaml - replace the theme line with:
# module:
# imports:
# - path: github.com/imfing/hextra
# Get the theme
hugo mod get github.com/imfing/hextraalexkasper-site/
├── hugo.yaml # Main configuration
├── data/
│ └── citations.yaml # SOURCE OF TRUTH for all citations
├── content/
│ ├── _index.md # Homepage
│ └── docs/
│ ├── _index.md # Docs landing
│ ├── about.md # About page
│ ├── citations.md # Renders all citations
│ ├── press.md # Press & media page
│ └── projects/
│ ├── _index.md # Projects index
│ ├── cseps.md # CSEPS project
│ ├── return-fire.md
│ └── naturesign.md
├── layouts/
│ ├── shortcodes/
│ │ ├── cite.html # Inline citation [Title, Publication]
│ │ ├── ref.html # Footnote-style reference [↗]
│ │ └── citation-list.html # Renders full citations page
│ └── _partials/
│ └── custom/
│ └── footer.html # Social icons in footer
├── assets/
│ └── css/
│ └── custom.css # Citation styling
└── static/
└── images/
├── toto-logo.svg # ADD YOUR LOGO HERE
└── toto-logo-dark.svg
Edit data/citations.yaml to add new citations:
- id: unique-id-here # Used to reference this citation
type: article # article | book | film | interview | podcast
title: "Article Title"
publication: Magazine Name # For articles
publisher: Publisher Name # For books
date: 2024-01-15
url: https://link-to-source.com
authors:
- Author Name
description: >
Brief description of this citation.
tags:
- relevant-tagInline citation (shows title and publication):
This was covered in {{</* cite "unique-id-here" */>}}.Renders as: [Article Title, Magazine Name]
Footnote-style reference (just a superscript link):
This claim is verified {{</* ref "unique-id-here" */>}}.Renders as: [↗] (superscript link to citations page)
The /docs/citations/ page automatically renders all citations from the data file, grouped by type.
Edit layouts/_partials/custom/footer.html to change the social links.
Place your logo files in static/images/:
toto-logo.svg- Light mode logototo-logo-dark.svg- Dark mode logo (optional)
Edit assets/css/custom.css for custom styles. Hextra uses Tailwind CSS, so you can also use Tailwind classes directly in templates.
Edit the menu.main section in hugo.yaml to change navigation.
- Push to GitHub
- Enable GitHub Pages in repo settings
- Use GitHub Actions (Hextra includes a workflow template)
Build the site:
hugo --minifyThe built site will be in the public/ directory. Deploy to any static host (Netlify, Vercel, Cloudflare Pages, etc.)
hugo new content/docs/projects/new-project.mdThen edit the file and add your content.
- Create directory:
content/docs/newsection/ - Add
_index.mdwith frontmatter - Add to menu in
hugo.yamlif needed
Content © Alex Kasper. Theme (Hextra) is MIT licensed.