- Add custom error pages (404, 403, 500) with user-friendly messages
- Add flash message system with signed cookies for security
- Add toast notifications with auto-dismiss and manual close
- Add comprehensive SEO meta tags (description, keywords, OG, Twitter)
- Add canonical URLs for SEO
- Update routes to use slug-based URLs (/posts/{slug} instead of /posts/{id})
- Add Open Graph and Twitter Card meta tags for social sharing
- Add favicon SVG
- Update all templates with proper meta tags and URLs
- Add error handlers registration in main.py
- Add flash middleware for request handling
- Install itsdangerous dependency
16 lines
634 B
Python
16 lines
634 B
Python
"""Web UI layer for blog application.
|
|
|
|
This package provides HTML endpoints and templates for the blog web interface,
|
|
separate from the JSON API layer. Uses Jinja2 templates with Gitea-inspired
|
|
theme support and comprehensive data-testid attributes for testing.
|
|
|
|
The web layer follows the same DDD principles as the API layer and will
|
|
be integrated with use cases in future iterations.
|
|
"""
|
|
|
|
from app.presentation.web.auth import router as auth_router
|
|
from app.presentation.web.error_handlers import register_error_handlers
|
|
from app.presentation.web.routes import router
|
|
|
|
__all__ = ["router", "auth_router", "register_error_handlers"]
|