CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

RemarkableScriptura is an Obsidian vault containing biblical scholarship notes, canons, and related content that is published as a static website using Astro Spaceship theme. The repository has two main components:

  1. Obsidian Content: Markdown files organized into:

    • Cannons/ - Biblical texts organized by testament
    • Notes/ - Research notes and scholarly analysis
    • Websites/ - Website-specific content
    • +/ - Additional resources and clippings
  2. Astro Theme: Located in Theme/ directory containing the static site generator

Architecture

  • Content Management: Uses Obsidian vault structure with wiki-links ([[]]) and embeds (![[]])
  • Site Generation: Astro with Spaceship theme that converts Obsidian content to static website
  • Content Linking: Symbolic link connects Theme/src/content to the root vault directory
  • Publishing Control: YAML frontmatter controls which content gets published

Development Commands

All development commands should be run from the Theme/ directory:

# Development server
npm run dev
 
# Development setup (linking local packages)
npm run dev-setup
 
# Clean start with sync
npm run start
 
# Production build
npm run build
 
# Preview production build
npm run preview
 
# Sync Astro content collections
npm run sync

Python Tooling

Python scripts in the Tooling/ directory should be run using uv:

# Run Python scripts with uv (preferred)
uv run Tooling/script_name.py
 
# Available tools:
uv run Tooling/rename_chapter_files.py    # Batch rename chapter files
uv run Tooling/remove_leading_zeros.py    # Remove leading zeros from chapters
uv run Tooling/fix_all_leading_zeros.py   # Comprehensive zero removal

Key Configuration Files

  • Theme/package.json - Project dependencies and scripts
  • Theme/astro.config.ts - Astro configuration using spaceship theme
  • Theme/src/content.config.ts - Content collections configuration
  • Theme/src/collections/ - Collection schema definitions

Content Structure

  • Content is organized as an Obsidian vault with standard markdown files
  • Uses YAML frontmatter for metadata and publishing control
  • Wiki-links and embeds are automatically resolved by the Astro theme
  • Tags and backlinks are supported for content discovery

Working with Content

  • When editing content, work directly with markdown files in the vault structure
  • The Theme automatically processes Obsidian-style links and embeds
  • Frontmatter controls publication status and metadata
  • The content symlink allows the Astro build to access vault content

File Naming Conventions

Biblical Chapter Files

  • Pattern: [Book Name] [Chapter Number].md
  • Examples: Genesis 1.md, Exodus 5.md, Psalms 23.md, Isaiah 53.md
  • Chapter Numbers: No leading zeros for single digits (1-9), normal format for 10+
  • Purpose: Follows Obsidian Folder Note convention for easy wiki-linking
  • Location: Within book directories using spaces: 01 Genesis, 19 Psalms, etc.

Directory Structure

  • Book Directories: Use spaces, not underscores: 01 Genesis, 02 Exodus, 19 Psalms
  • Numbering: Two-digit book numbers with space separation
  • Examples: Cannons/Old Testament/01 Genesis/, Cannons/Old Testament/19 Psalms/

Text Analysis Files

  • Pattern: [Book Name] [Chapter Number] (Text Analysis).md
  • Examples: Genesis 1 (Text Analysis).md, Genesis 6 (Text Analysis).md
  • Purpose: Scholarly analysis of specific chapters

Overview Files

  • Pattern: [Book Name] [Range] Overview.md
  • Examples: Genesis 3-5 Overview.md, Genesis 6-9 Overview.md
  • Purpose: Thematic or narrative overviews spanning multiple chapters

Linking Examples

  • [[Genesis 1]] → Links to Genesis 1.md
  • [[Psalms 23]] → Links to Psalms 23.md
  • [[Isaiah 53]] → Links to Isaiah 53.md
  • [[1 Samuel 17]] → Links to 1 Samuel 17.md