diff options
| author | Paul Buetow <paul@buetow.org> | 2025-07-09 00:54:06 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-07-09 00:54:06 +0300 |
| commit | 7c82d9c821a900e8970c8c1c6b1d85ec9bde734a (patch) | |
| tree | 38d12c1057992259d94f67182e49aa1fec228546 /CLAUDE.md | |
| parent | 7248767f16f90cf241da2e910bb1f181ad7bba1e (diff) | |
Update content for html
Diffstat (limited to 'CLAUDE.md')
| -rw-r--r-- | CLAUDE.md | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 00000000..5a79f3e0 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,60 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Project Overview + +This is a static site generator project that uses **Gemtext** as the source format and generates multiple output formats. The project uses "Gemtexter" (a Bash-based static site generator) to convert Gemtext files into HTML, Markdown, and various feed formats. + +**Key Architecture:** +- **Source files**: Gemtext (`.gmi`) and template files (`.gmi.tpl`) in the `/gemtext` directory +- **Generated outputs**: HTML in `../html/`, Markdown in `../md/`, with caching in `../cache/` +- **Content structure**: Blog posts in `gemfeed/`, personal notes in `notes/`, about pages in `about/` +- **Template system**: `.gmi.tpl` files are processed to generate final `.gmi` files with dynamic content + +## Build Commands + +Since this project uses Gemtexter (a Bash-based static site generator), the build process involves: + +**Main generation command:** +```bash +# From the parent directory (/home/paul/git/foo.zone-content/) +# Look for gemtexter script or build scripts in the parent directory +``` + +**File structure patterns:** +- `.gmi.tpl` → `.gmi` (template processing) +- `.gmi` → `.html` + `.md` + feeds (multi-format generation) + +## Content Architecture + +**Template System:** +- Files with `.gmi.tpl` extension are templates that get processed +- Templates can include dynamic content like timestamps and automatic content generation +- Example: `index.gmi.tpl` generates `index.gmi` with current timestamp + +**Output Formats:** +- **Gemtext**: Native format for Gemini protocol (`.gmi` files) +- **HTML**: Web-ready format with embedded CSS and fonts +- **Markdown**: For GitHub Pages deployment +- **Atom feeds**: For blog subscription (XML format) +- **Gemfeeds**: Gemini-specific feed format + +**Content Organization:** +- `gemfeed/`: Blog posts with date-prefixed naming (YYYY-MM-DD-title.gmi) +- `notes/`: Book notes and technical references +- `about/`: Personal information and resource lists + +## Development Workflow + +1. **Content Creation**: Write new content in Gemtext format (`.gmi` files) +2. **Template Updates**: Modify `.gmi.tpl` files for dynamic content +3. **Generation**: Run Gemtexter to generate all output formats +4. **Multi-format Output**: Content automatically appears in HTML, Markdown, and feed formats + +## Important Notes + +- The current working directory is `/gemtext` but build tools are likely in the parent directory +- Generated files should not be edited directly - edit source `.gmi` or `.gmi.tpl` files instead +- The project generates a complete multi-format website from simple Gemtext sources +- Cache files in `../cache/` help with performance during regeneration
\ No newline at end of file |
