Personal blog and portfolio site built with Hugo and deployed to GitHub Pages.
This is a static site built with Hugo v0.155.1 using the custom coreydaley-dev theme. The site features:
- 📝 Blog posts with categories and tags
- 🔍 Client-side search powered by Pagefind
- 🎨 Clean, responsive design with a fun cartoony aesthetic
- 🤖 AI-generated content (clearly disclosed)
- 📊 Google Analytics integration
Before working on this project, ensure you have the following installed:
- Hugo Extended v0.155.1 (installation guide)
- Node.js (for Prettier and Pagefind)
- npm (comes with Node.js)
- Git (for version control)
git clone https://github.com/coreydaley/coreydaley.github.io.git
cd coreydaley.github.ionpm installhugo server -DThe site will be available at http://localhost:1313. The -D flag includes draft posts.
hugo new posts/my-post-title.mdThis creates a new post using the archetype template with proper frontmatter. Posts are created as drafts by default.
+++
author = 'AI Agent Name (Model Version)'
title = 'Post Title'
date = '2026-02-08T14:30:00-05:00'
draft = true
description = 'Brief description for SEO and previews'
tags = ['tag1', 'tag2', 'tag3']
categories = ['Category 1', 'Category 2']
+++Required Fields:
author: Attribution for AI or human authortitle: Post titledate: ISO 8601 timestamp with timezonedraft: Boolean (set tofalseto publish)description: SEO-friendly summarytags: Specific keywords (lowercase, hyphenated)categories: Broad topic groupings (Title Case, 1-3 per post)
hugo server -Dhugo --minifyThe built site will be in the public/ directory.
npx prettier --write "themes/coreydaley-dev/layouts/**/*.html"npx prettier --check "themes/coreydaley-dev/layouts/**/*.html"# JavaScript
npx prettier --write "themes/coreydaley-dev/static/js/**/*.js"
# CSS
npx prettier --write "themes/coreydaley-dev/static/css/**/*.css"
# Markdown
npx prettier --write "content/**/*.md"hugo --minify && echo "Build successful!"hugo --minify
cd public
python3 -m http.server 8000Visit http://localhost:8000 to preview the production build.
.
├── .editorconfig # Editor configuration
├── .github/
│ └── workflows/
│ └── hugo.yml # GitHub Actions CI/CD
├── .prettierrc # Prettier configuration
├── AGENTS.md # Instructions for AI agents
├── CLAUDE.md # Claude-specific instructions
├── README.md # This file
├── archetypes/
│ └── default.md # Template for new posts
├── content/
│ ├── posts/ # Blog posts
│ ├── search.md # Search page
│ └── about.md # About page
├── hugo.toml # Hugo configuration
├── package.json # npm dependencies
├── public/ # Built site (gitignored)
└── themes/
└── coreydaley-dev/ # Custom theme
├── layouts/ # Hugo templates
├── static/ # CSS, JS, images
└── archetypes/ # Theme archetypes
Main site settings including:
- Base URL and site title
- Author information
- Social media links
- Google Analytics tracking
- Pagination settings
- Taxonomy configuration
Prettier is configured to format Hugo templates using the prettier-plugin-go-template plugin. Configuration includes:
- HTML template formatting with Go template syntax support
- Consistent indentation and line wrapping
- Automatic formatting on save (if editor supports it)
EditorConfig maintains consistent coding styles:
- UTF-8 encoding
- LF line endings
- 2-space indentation for HTML, JS, YAML, TOML
- 4-space indentation for CSS
- Trim trailing whitespace
The site is automatically deployed to GitHub Pages via GitHub Actions when changes are pushed to the main branch.
- Push changes to
mainbranch - GitHub Actions workflow triggers (
.github/workflows/hugo.yml) - Workflow:
- Checks out code with submodules
- Installs Hugo v0.155.1, Dart Sass, Node.js, and Pagefind
- Builds site with
hugo --minify - Indexes content with Pagefind for search
- Deploys to GitHub Pages
- Site is live at
https://coreydaley.github.io
If you need to deploy manually:
# Build the site
hugo --minify
# Index for search
npx pagefind --source "public"
# Push to gh-pages branch (if configured)
# Or commit public/ directory (if using different setup)This project welcomes AI-assisted development. When working as an AI agent:
- Read AGENTS.md first - Contains detailed instructions for AI agents
- Set proper author attribution - Use format:
'Agent Name (Model Version)' - Add file headers - Include creation/modification metadata in HTML, CSS, JS files
- Follow conventions - TOML frontmatter, proper categories, tag cloud sizing
- Test builds - Always run
hugo --quietto verify changes don't break the build
See AGENTS.md for complete AI agent instructions.
- Read through AGENTS.md for project conventions
- Ensure Hugo v0.155.1 extended is installed
- Run
npm installto install formatting tools - Start dev server:
hugo server -D
- Create a new branch for your changes
- Make your modifications
- Format code:
npx prettier --write "**/*.html" - Test build:
hugo --minify - Commit with descriptive messages
- Push and create a pull request
- Follow the EditorConfig settings
- Run Prettier before committing
- Use semantic HTML
- Keep CSS organized by section
- Comment complex logic
If builds fail, ensure you're using Hugo v0.155.1 extended:
hugo versionIf Prettier can't find the Go template parser:
# Reinstall dependencies
npm install
# Verify plugin is installed
npm list prettier-plugin-go-templatePagefind indexes are built during CI/CD. To test search locally:
hugo --minify
npx pagefind --source "public"
hugo server --disableFastRenderIf CSS/JS changes don't appear:
- Hard refresh:
Cmd+Shift+R(Mac) orCtrl+Shift+R(Windows/Linux) - Clear browser cache
- Restart Hugo dev server
This project is open source and available under the MIT License.
- Built with Hugo
- Search powered by Pagefind
- Hosted on GitHub Pages
- Formatted with Prettier
- AI-assisted development with Claude Code