Enhances the algorithm for extracting image dimensions from Telegram widget styles by introducing a more robust fallback mechanism. Previously relied on partial style matching which could miss dimension data encoded across multiple DOM elements.
Now checks wrapper elements and padding-top percentage ratios more systematically to synthesize layout dimensions when explicit width/height are unavailable. This ensures more reliable image aspect ratio calculation for content rendering.
Also clarifies error messages in the sync workflow and updates code comments from Chinese to English for better maintainability.
Replaces PostCSS-based styling with Tailwind CSS v4 via Vite plugin
Converts all .js files to .ts with proper type annotations
Adds comprehensive type definitions for Telegram data structures
Extracts reusable UI components and standardizes class utilities
Improves maintainability by eliminating custom CSS in favor of
Tailwind utilities and design tokens
Enhances type safety across Telegram parsing, env access, and API routes
Centralizes agent guidelines in AGENTS.md following repository standards
Upgrades iconography to astro-icon with Remix Icon integration
Expands accessible HTML patterns including ARIA labels, semantic
navigation, and keyboard interaction support
Refactors static proxy logic into shared utility functions
Consolidates modal and image preview markup for consistency
Integrates EdgeOne as a deployment adapter alongside existing providers like Cloudflare, Netlify, Node, and Vercel.
Enables deployment to EdgeOne platform by adding the adapter package and configuration, expanding the available deployment options for the project.
Updates social media handles, repository links, and funding references from old username to new one across configuration files, documentation, and layouts.
Adds xmlns:atom namespace declaration to the XSL stylesheet to support Atom feed elements and ensure proper XML namespace resolution
This enables handling of Atom elements within RSS feeds while maintaining compatibility with existing RSS functionality.
Switches from getRssString to modern rss helper function
Moves XSL stylesheet to dedicated static file
Improves code organization and maintainability
Simplifies RSS feed configuration while maintaining beautification option
Introduces a new RSS_BEAUTIFY configuration flag to enable RSS feed styling
- Adds XSL styling support for RSS feeds when enabled
- Updates documentation in both English and Chinese
- Modifies RSS generation to support the new styling option
Migration from rss to getRssString for enhanced customization
Implements dynamic favicon handling using wsrv.nl image service:
- Resizes channel avatar to 64x64
- Applies circular mask for consistent appearance
- Ensures HTTPS compatibility by stripping protocol
- Falls back to default favicon when no avatar exists
Improves visual consistency across different platforms and scales
Improves Sentry integration in Docker builds by:
- Moving Sentry environment variables to build args
- Adding .env to dockerignore for security
- Properly passing Sentry configuration during build process
This change ensures better security practices and more reliable Sentry configuration in containerized environments.
- Prioritize SEO settings from page data over environment variables
- Improve title extraction logic to handle new line characters
- Set SEO parameters for specific pages to improve search visibility