1
0
mirror of https://gitlab.com/Anson-Projects/projects.git synced 2025-09-14 01:25:02 +00:00
Files
Projects/ghost-upload
Anson 85adfdf067 fix: allow publish job to run on feature branch for testing
- Make pages dependency optional to allow testing without pages deployment
- Add rule to allow publish job on ghost-content-extraction branch
- This enables testing the RSS feed parsing and error handling
2025-08-22 23:30:27 -06:00
..

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

  1. 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)
  2. Content Extraction: Rust tool fetches clean HTML from the ghost-content version instead of using iframes

  3. 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)