Added doggy post :3
This commit is contained in:
@@ -0,0 +1,109 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## Architecture Overview
|
||||
|
||||
This is a Hugo static site for the Foss Cat blog (fosscat.com), using the Gokarna theme. The site
|
||||
includes blog posts, TILs (Today I Learned), and project pages.
|
||||
|
||||
Key architectural components:
|
||||
|
||||
- **Hugo framework**: Static site generator with content in Markdown
|
||||
- **Gokarna theme**: Git submodule theme providing the site's design
|
||||
- **Content structure**: Posts in `content/posts/`, TILs in `content/tils/`, projects in `content/projects/`
|
||||
- **Static assets**: Images and other assets in `static/` directory
|
||||
- **Custom layouts**: Overrides in `layouts/` for TILs and other content types
|
||||
- **Configuration**: Main site config in `config.toml`
|
||||
|
||||
## Development Commands
|
||||
|
||||
### Environment Setup
|
||||
|
||||
```bash
|
||||
# Initialize git submodules (theme)
|
||||
git submodule init
|
||||
git submodule update
|
||||
|
||||
# Enter Nix development environment (if using Nix)
|
||||
nix develop
|
||||
```
|
||||
|
||||
### Building and Development
|
||||
|
||||
```bash
|
||||
# Start development server with live reload
|
||||
hugo server
|
||||
|
||||
# Build static site for production
|
||||
hugo
|
||||
|
||||
# Build with drafts included
|
||||
hugo --buildDrafts
|
||||
```
|
||||
|
||||
### Linting and Quality Checks
|
||||
|
||||
```bash
|
||||
# Lint markdown files
|
||||
markdownlint content/**/*.md
|
||||
|
||||
# Format markdown files
|
||||
prettier --write content/**/*.md
|
||||
|
||||
# Spell check (requires aspell with English dictionary)
|
||||
aspell check --mode=markdown --lang=en --personal=./.aspell.en.pws [filename.md]
|
||||
```
|
||||
|
||||
### Git Hooks
|
||||
|
||||
- Pre-commit hooks automatically installed via `scripts/install_hooks.sh`
|
||||
- Hooks run markdown linting and spell checking on staged `.md` files
|
||||
- Personal dictionary in `.aspell.en.pws` for spell checking
|
||||
|
||||
## Content Management
|
||||
|
||||
### Creating New Content
|
||||
|
||||
```bash
|
||||
# Create new blog post
|
||||
hugo new posts/post-title.md
|
||||
|
||||
# Create new TIL
|
||||
hugo new tils/til-title.md
|
||||
|
||||
# Create new project
|
||||
hugo new projects/project-name.md
|
||||
```
|
||||
|
||||
### TILs (Today I Learned)
|
||||
|
||||
- Custom archetype in `archetypes/tils.md`
|
||||
- Custom layouts in `layouts/tils/` for list and single views
|
||||
- Accessible via `/tils/` URL path
|
||||
|
||||
## Site Configuration
|
||||
|
||||
- **Base URL**: <https://fosscat.com/>
|
||||
- **Theme**: Gokarna (git submodule)
|
||||
- **Syntax highlighting**: catppuccin-frappe style
|
||||
- **Content language**: English (en-us)
|
||||
- **Social icons**: Configured for Gitea, Twitch, RSS
|
||||
- **Navigation menu**: Defined in `config.toml`
|
||||
|
||||
## Development Environment
|
||||
|
||||
This repository uses Nix flakes for reproducible development environment including:
|
||||
|
||||
- Hugo static site generator
|
||||
- Marksman (Markdown LSP)
|
||||
- Prettier (code formatter)
|
||||
- markdownlint-cli
|
||||
- aspell with English dictionaries
|
||||
|
||||
## Quality Assurance
|
||||
|
||||
- Markdown linting enforced via `.markdownlint.jsonc` configuration
|
||||
- Spell checking with personal dictionary support
|
||||
- Pre-commit hooks prevent commits with linting/spelling errors
|
||||
- Use `git commit --no-verify` to bypass hooks if needed
|
||||
Reference in New Issue
Block a user