A modern Flask blog with enhanced MDX-inspired styling features.
- Enhanced Typography - Improved fonts, spacing, and readability
- Code Blocks with Filenames - Professional code presentation
- Callout Components - Note, warning, and error callouts
- Terminal Styling - Command-line code blocks
- Task Lists - Interactive-style task lists
- Image Utilities - Responsive image sizing classes
- Enhanced Tables - Better styling and mobile responsiveness
- Reading Time Calculation - Automatic reading time estimation
- Word Count Display - Article word count metadata
- Article Summaries - Automatic content summaries
- Dark Mode Support - All features work in dark/light modes
- Mobile Responsive - All components adapt to mobile screens
static/blog-styles.css- Comprehensive MDX-inspired stylingENHANCED_BLOG_FEATURES.md- Complete feature documentationsample_enhanced_content.html- Example content demonstrating features
See ENHANCED_BLOG_FEATURES.md for a complete guide on using the new blog features.
# Install dependencies
uv add flask python-slugify psycopg2-binary
# Run the application
uv run python app.py- CI workflow:
.github/workflows/ci.yml- Runs Ruff formatting and lint checks via
uvon every push/PR. - Builds the project with
uv buildand verifies the wheel installs into a freshuvvirtual environment. - Uses the
astral-sh/setup-uvaction to stay aligned with Astral's tooling recommendations.
- Runs Ruff formatting and lint checks via
- Caching implementation (e.g., Redis, Memcached) for improved performance
- Enhanced User Authentication (e.g., social logins, two-factor authentication)
- Full-text search functionality for blog articles and projects
- Advanced Admin Panel (e.g., user management, site analytics)
- RSS Feed for blog articles
- Commenting system for blog posts
- Tagging and categorization for articles and projects
- SEO optimization features (e.g., sitemap generation, meta tag management)
- API for content access
- Contact form with email notifications
- Pagination on articles and projects pages
- Dark mode toggle
- Image optimization & lazy-loading
- Analytics integration (e.g., Google Analytics)
- Markdown support for project and article descriptions
- Automated testing suite (unit + integration)