Skip to content

feat: Build static site for GitHub Pages (fixes #11)#22

Merged
leblancfg merged 2 commits intomainfrom
feat/static-site
Aug 20, 2025
Merged

feat: Build static site for GitHub Pages (fixes #11)#22
leblancfg merged 2 commits intomainfrom
feat/static-site

Conversation

@leblancfg
Copy link
Collaborator

Summary

  • Implements static site generator for GitHub Pages as specified in Build static site for GitHub Pages #11
  • Creates clean, minimal HTML landing page with RSS feed subscription
  • Pure HTML/CSS implementation with no JavaScript

Changes

  • Data Models: Added Pydantic models for deprecation entries and provider status
  • Site Generator: Implemented StaticSiteGenerator class using Jinja2 templates
  • Templates: Created responsive HTML templates with:
    • Prominent RSS feed subscribe button/link
    • List of latest deprecations (sorted by date, newest first)
    • Provider status indicators (✓ for healthy, ✗ for errors)
    • Last update timestamp
    • Mobile-first responsive design
  • Styling: Clean, minimal CSS with professional color scheme
  • Mock Data: Added mock data generator for testing
  • Tests: Comprehensive test coverage (30 tests, all passing)

Testing

  • All tests pass: pytest tests/
  • Site generation tested locally
  • Mobile responsiveness verified
  • No JavaScript dependencies

Deployment

The generated site will be served from the docs/ directory via GitHub Pages at:
https://leblancfg.github.io/deprecations-rss/

Fixes #11

@leblancfg
Copy link
Collaborator Author

CI is failing due to formatting issues. Please run 'uv run ruff format' to fix formatting and push the changes.

- Create Pydantic models for deprecation data structure
- Implement StaticSiteGenerator with Jinja2 templates
- Add clean, minimal HTML landing page with:
  - Prominent RSS feed subscribe button
  - List of latest deprecations (sorted by date)
  - Provider status indicators
  - Last update timestamp
  - Mobile responsive design (pure CSS, no JS)
- Add mock data generator for testing
- Update .gitignore to allow docs/*.html for GitHub Pages
- Add comprehensive test coverage (30 tests)

Implements #11
- Fix retirement_date to be required in all tests
- Update field names from url to source_url
- Fix linting and formatting issues
- Add proper type hints
- All 273 tests passing
@leblancfg leblancfg merged commit f6695d1 into main Aug 20, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build static site for GitHub Pages

1 participant