- Add 87 new tests covering search, books, stories, biographies,
red letter, helpers, commentary loader, interlinear, cross-references,
PDF generation, topics, and reading plans modules
- Coverage improved from 75% to 78% (497 tests total)
- Add pytest-cov dependency for coverage reporting
- Remove Strong's Concordance, Study Guides, and Reading Plans
links from the About page's Explore Further section
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The warnings are cosmetic - we use 'example' instead of 'examples' because it works better for pre-filling Swagger UI input fields with default values.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- biblepy was listed in pyproject.toml but never imported or used
- Project uses custom Bible class in kjv.py instead
- Custom implementation loads from local verses-1769.json file
- Provides better control over caching, parsing, and search
- Updated CLAUDE.md and README.md to reflect custom implementation
- All 268 tests passing without biblepy
Benefits of custom implementation:
- Control over exact KJV edition (1769 Cambridge)
- Custom verse parsing and search logic
- LRU caching for performance optimization
- Pre-processed verse text on load
- No external API dependencies
🤖 Generated with Claude Code
https://claude.com/claude-code
Co-Authored-By: Claude <noreply@anthropic.com>
- Add WeasyPrint dependency and system libs to Docker image
- Create PDF templates for adult and kids stories
- Add /stories/{slug}/pdf and /stories/{slug}/kids/pdf routes
- Add Download PDF button to story pages
- Add stories API endpoints: /api/stories and /api/stories/{slug}
- Gracefully handle missing WeasyPrint system libraries
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Created resource_index.html as a unified template for all resource pages
- Updated routes to use the generic template with configurable data
- Added link_verses and link_names filters to descriptions for automatic linking
- Added 6 new resources to /resources page (Miracles, I Am Statements,
Beatitudes, Ten Commandments, Armor of God, Prayers)
- Deleted 6 redundant individual templates (miracles.html, prayers.html,
beatitudes.html, ten_commandments.html, armor_of_god.html, i_am_statements.html)
This reduces code duplication and ensures consistent verse linking across
all resource pages.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Move pytest, pytest-cov, pytest-xdist to dev dependencies
- Remove redundant jinja2 and uvicorn (included in fastapi[standard])
- Update CI to use --extra dev for test dependencies
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add pytest-xdist and use -n auto to run tests in parallel within
a single job instead of multiple GitHub Actions runners.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
New workflow: test.yml
- Runs on push to main and all pull requests
- Executes full test suite with pytest
- Generates coverage report
- Includes optional code quality checks
Updated workflow: fly-deploy.yml
- Added test job that runs before deployment
- Deploy only happens if all tests pass
- Prevents deploying broken code to production
Updated dependencies:
- Added pytest-cov for coverage reporting in CI
The test suite (100+ tests) now runs automatically:
- On every push to main
- On every pull request
- Before every deployment to Fly.io
This ensures code quality and prevents regressions.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The commit adds support for parsing GEDCOM genealogy files for the biblical
family tree, falling back to hardcoded data if parsing fails.
Add GEDCOM parsing and extended family tree data
This commit adds GEDCOM file parsing capabilities and expands the biblical
family tree implementation to include more comprehensive genealogical data from
Adam to Noah's sons.
Remove package installation step and use FastAPI CLI with PYTHONPATH
for simpler container execution. Disable reload in main.py and include
static/templates as package data for proper distribution.