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.
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
This is a standard Next.js App Router project. Vercel can usually detect the settings automatically:
npm installnpm run buildNo 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.
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
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.
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.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.