mirror of
https://gitlab.com/Anson-Projects/projects.git
synced 2025-09-12 16:45:08 +00:00
1.0 KiB
1.0 KiB
ghost-upload
This tool synchronizes posts from https://projects.ansonbiggs.com to the Ghost blog at https://notes.ansonbiggs.com.
Features
- Clean content extraction: Uses Quarto ghost profile to generate clean HTML instead of iframes
- Duplicate prevention: Checks Ghost Admin API to avoid creating duplicate posts
- AI summaries: Uses Kagi Summarizer for post summaries
- Dual content rendering: GitLab CI builds both main site and ghost-optimized versions
How It Works
-
Dual Build Process: GitLab CI builds the site twice:
- Main site →
public/
(normal theme with navigation) - Ghost content →
public/ghost-content/
(minimal theme for content extraction)
- Main site →
-
Content Extraction: Rust tool fetches clean HTML from the ghost-content version instead of using iframes
-
Duplicate Detection: Uses Ghost Admin API to check for existing posts by slug
Environment Variables
admin_api_key
: Ghost Admin API key (required)kagi_api_key
: Kagi Summarizer API key (required)