Includes project overview, development commands, architecture details, and tea CLI commands for Forgejo integration. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2.7 KiB
2.7 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
This is a Hugo static site generator project for "The Angry Michigander" blog. The site uses the Lynx theme (github.com/jpanther/lynx) via Hugo modules.
Development Commands
- Local development:
hugo server -D
(serves locally with drafts) - Build for production:
hugo --minify
(outputs topublic/
directory) - Build regular:
hugo
(outputs topublic/
directory)
Architecture
- Framework: Hugo static site generator with Go modules
- Theme: Lynx theme (github.com/jpanther/lynx v1.4.0) imported as Hugo module
- Configuration: hugo.yaml (main config file)
- Content: Markdown files in
content/
directory - Static assets:
static/
directory for static files - Build output:
public/
directory (generated, not tracked in git)
Key Files and Directories
hugo.yaml
- Main Hugo configurationgo.mod
- Go module dependencies for Hugo modulescontent/
- Markdown content filesarchetypes/
- Content templates (default.md, post.md)layouts/partials/
- Custom layout overridesstatic/
- Static assetsassets/
- Source assets (CSS, images)
CI/CD
The project has dual CI/CD setup:
- GitHub Actions:
.github/workflows/
(ubuntu-latest runner) - Forgejo Actions:
.forgejo/workflows/
(self-hosted runner)
Both include build and deploy workflows that:
- Check out code with submodules
- Set up Hugo extended version
- Build with
hugo --minify
- Upload artifacts to
public/
directory
Forgejo Integration
This project uses Forgejo for source control. Use the tea
CLI tool (https://gitea.com/gitea/tea) for Forgejo operations instead of gh
CLI:
- Setup:
tea login add
(first-time setup) - List pull requests:
tea pulls
ortea pulls list
- Create pull request:
tea pulls create
- View pull request:
tea pulls [PR index]
- Merge pull request:
tea pulls merge [PR index]
- List issues:
tea issues
ortea issues list
- Create issue:
tea issues create
- View issue:
tea issues [issue index]
Always prefer tea
commands over gh
commands when working with this repository's Forgejo instance.
Theme Customization
The Lynx theme is used via Hugo modules. Custom overrides can be placed in:
layouts/
- Layout overridesassets/css/custom.css
- Custom CSSstatic/
- Static file overrides
Content Creation
Use archetypes for new content:
archetypes/default.md
- Default content templatearchetypes/post.md
- Blog post template with extensive frontmatter options
Create new posts with: hugo new posts/my-post.md