Daniel

Daniel Study Platform

Interactive Next.js study platform for the biblical book of Daniel. The site is structured for Adventist-prioritized historicist interpretation, KJV Bible text, sermon-style theological commentary, local bookmarks/notes, print-friendly chapter pages, and internal source accountability.

Run Locally

Install dependencies, then start the dev server:

npm install
npm run dev

Open http://localhost:3000.

Useful scripts:

npm run validate
npm run typecheck
npm run build
npm run generate:content
npm run digest:sources
npm run expand:verses
npm run extract:sermons
npm run extract:pdfs

Publish To Vercel

This is a standard Next.js App Router project. Vercel can usually detect the settings automatically:

No public environment variables are required for the current build.

Recommended pre-upload checks:

npm run audit:public-text
npm run validate
npm run check:quotes
npm run check:weak-commentary
npm run lint
npm run typecheck
npm run build

Generated folders such as node_modules, .next, .source-cache, and local TypeScript build info are ignored for GitHub/Vercel upload.

Project Structure

app/                 Next.js App Router pages
components/          Reusable UI, study, chart, search, and navigation components
content/             Structured JSON content for Daniel, prophecy, schools, glossary, internal resources, timeline
lib/                 Zod schemas, content loading, and utilities
scripts/             Content generation, PDF extraction, and validation utilities
content-review-needed.json

Content Model

Each chapter file in content/daniel/chapter-XX.json includes:

All 357 verses have expanded notes. Chapter pages show one detailed, theological explanation per verse in a sermon-note style rather than separate reader modes, visible citations, or labeled mini-sections. Each verse still keeps internal source IDs, confidence level, and review status for maintenance. Disputed sections remain marked for review instead of being filled with overconfident claims.

Citation Policy

PDF Ingestion

The ingestion helper extracts local uploaded PDFs into a gitignored cache:

npm run extract:pdfs

This reads PDFs from:

/Users/samuel/Desktop/Daniel

and writes text files into:

.source-cache/texts

The sermon/study material extractor reads local Daniel series DOCX/PDF files into a separate gitignored cache:

npm run extract:sermons

Use these caches for research, tone, and page-location review only. Keep the public site synthesized and do not ship raw extracted document text.

Build the internal source-aware verse digest before regenerating enriched commentary:

npm run digest:sources
npm run expand:verses

The digest writes .source-cache/source-map.json, .source-cache/verse-digests.json, and .source-cache/enrichment-coverage.json. These files are for local maintenance only; the public chapter pages remain synthesized and citation-free by default.

Content Review Needed

content-review-needed.json lists:

Use generated, public-domain, open-licensed, or explicitly permitted images only. Do not extract copyrighted images from uploaded PDFs unless permission is clear. The current chapter image entries are placeholders until assets are reviewed.

Default Interpretive Assumptions