1. 06 Sep, 2026 6 commits
    • Phạm Quang Bảo's avatar
      [tag]0.1-vcci · 7fe3590c
      Phạm Quang Bảo authored
      7fe3590c
    • Phạm Quang Bảo's avatar
      revert: remove custom SEO image optimization endpoint and sharp dependency · 290840a0
      Phạm Quang Bảo authored
      - Remove sharp@0.34.5 dependency and related lock file entries
      - Delete /api/seo-image endpoint for server-side image processing
      - Replace toSeoImageUrl with toAbsoluteSeoImageUrl for direct absolute URL resolution
      - Remove host validation and fallback logic from SEO image handling
      - Simplify buildDynamicPostHref to only normalize path without query parameters
      - Remove id and categoryId query parameters from article URLs in
      290840a0
    • Phạm Quang Bảo's avatar
      [tag]0.1-vcci · 91aa0f69
      Phạm Quang Bảo authored
      91aa0f69
    • Phạm Quang Bảo's avatar
      feat: add custom SEO image optimization endpoint with sharp · 1b566648
      Phạm Quang Bảo authored
      - Add sharp@0.34.5 dependency for server-side image processing
      - Create /api/seo-image endpoint to resize og:images to 1200x630 JPEG
      - Replace toOptimizedSeoImageUrl with toSeoImageUrl routing through custom endpoint
      - Implement host validation to prevent open proxy abuse (allow vcci-hcm.org.vn, vccihcm.vn)
      - Add automatic fallback to /thumbnail.png when source image fails
      - Set aggressive caching headers (max-age=86400, s-maxage=2592000)
      - Support both absolute
      1b566648
    • Phạm Quang Bảo's avatar
      [tag]0.1-vcci · 716858a0
      Phạm Quang Bảo authored
      716858a0
    • Phạm Quang Bảo's avatar
      refactor: replace getRandomFallbackImage with getFallbackImage and reduce ad counts · c297344d
      Phạm Quang Bảo authored
      - Replace getRandomFallbackImage() with getFallbackImage(index) for deterministic fallback images
      - Reduce advertisement count from 3 to 2 in News section
      - Reduce sidebar advertisements from 5 to 3 in ArticleDetailPage
      - Add image validation and optimization for SEO metadata
      - Implement toOptimizedSeoImageUrl() to serve optimized images via Next.js image optimizer
      - Add isRemoteImageValid() to verify remote image
      c297344d
  2. 04 Sep, 2026 19 commits
  3. 28 Aug, 2026 8 commits
  4. 25 Aug, 2026 5 commits
  5. 24 Aug, 2026 2 commits