Changelog

Riwayat perubahan dan pembaruan situs.

Juni 2026

  • chore: resolve rebase conflict, remove old cerita directory

    29 Juni 2026

  • feat: rebrand from KKN team portal to kecamatan portal

    29 Juni 2026

  • Update Pariwisata “taw-kramat-suci”

    29 Juni 2026

  • Create Cerita “akshdjklsahdlka”

    29 Juni 2026

  • Update Cerita “fidel”

    29 Juni 2026

  • docs: add spec and implementation plan for bugfix + improvements

    29 Juni 2026

  • feat: extract ContentCard base component for shared card pattern

    29 Juni 2026

  • feat: add UMKM and festival entries to dynamic sitemap

    29 Juni 2026

  • feat: add content validation script for frontmatter checking

    29 Juni 2026

  • feat: add JSON-LD structured data helpers for SEO

    29 Juni 2026

  • feat: add styled error boundaries for root and per-route pages

    29 Juni 2026

  • feat: add skeleton loading states for all content pages

    29 Juni 2026

  • feat: add backdrop overlay behind mobile navigation menu

    29 Juni 2026

  • fix: improve text readability with stronger text-shadow and better contrast on hero and page heroes

    29 Juni 2026

  • fix: modal centering on mobile, bottom sheet behavior, swipe-to-close, and UMKM overflow

    29 Juni 2026

  • fix: admin CMS page — local_backend in config, rewritten index.html, fix rewrites and source maps

    29 Juni 2026

  • fix: quote cerita frontmatter dates and coerce string type to prevent YAML parsing errors

    29 Juni 2026

  • fix: replace arbitrary cubic-bezier easing with custom token, move shadow utilities to tailwind config

    29 Juni 2026

  • fix: production 500 error, huge navbar, and CMS issues

    29 Juni 2026

  • feat: comprehensive frontend refactor — decorations, layout fixes, responsiveness

    29 Juni 2026

  • Create Cerita “fidel”

    29 Juni 2026

  • Update Cerita “persiapan-festival”

    29 Juni 2026

  • fix: popup must SEND handshake first, not listen for it

    29 Juni 2026

  • fix: implement proper Decap CMS auth popup handshake protocol

    29 Juni 2026

  • fix: implement full Decap CMS OAuth popup protocol in /api/auth

    29 Juni 2026

  • fix: handle OAuth callback in GET handler to stop infinite redirect

    29 Juni 2026

  • fix: add GET handler to /api/auth for Decap CMS OAuth redirect

    29 Juni 2026

  • fix: convert OAuth endpoint to Next.js Route Handler

    29 Juni 2026

  • fix: admin OAuth login + add Vercel Speed Insights

    29 Juni 2026

  • feat: CMS-driven content, Google Maps, CeritaStats, modal, mobile, docs

    29 Juni 2026

  • fix: CMS repo mismatch, pariwisata duplicate h1, e2e test mismatches

    29 Juni 2026

  • feat: CMS as source of truth, a11y/visual audit, map fix, decap-server integration

    28 Juni 2026

  • feat: update site metadata to village-profile framing

    27 Juni 2026

  • feat: add purposeful micro-interactions - hero parallax, card hover, countdown pulse, section reveals

    27 Juni 2026

  • feat: add TMA XLSX import pipeline for Air & Tanah data

    27 Juni 2026

  • feat: update homepage grid, map UMKM layer, CMS config, and sitemap for new sections

    27 Juni 2026

  • feat: add Lingkungan page with GIS gallery and map deep-link

    27 Juni 2026

  • feat: add Air & Tanah page with TMA data table and chart

    27 Juni 2026

  • feat: migrate UMKM schema from product to kategori, require lat/lng

    27 Juni 2026

  • feat: restructure navbar with grouped dropdowns for Profil and Data & Analisis

    27 Juni 2026

  • fix: Kilas Sambelia gallery fallback, reframe to Potensi Desa, verify social links

    27 Juni 2026

  • feat: remove KKN-centric sections (kegiatan, mitra, SponsorCta, tim)

    27 Juni 2026

  • fix: adjust hero image crop to show boat and beach

    27 Juni 2026

  • feat: replace Vercel favicon with village logo

    27 Juni 2026

  • fix: hero image, mitra, /peta crash, tentang images, image optimization, footer

    27 Juni 2026

  • fix: add missing lib/links.ts with petaLink helper, wire tab query param into MapPanel

    26 Juni 2026

  • docs: self-review findings and future work

    26 Juni 2026

  • refactor(listings): split listing pages into server page + client list component

    26 Juni 2026

  • docs: add content contributor guide

    26 Juni 2026

  • feat(seo): add per-page metadata and title template

    26 Juni 2026

  • feat(content): replace hero and placeholders with real nature photos and descriptions

    26 Juni 2026

  • feat(listings): add DetailModal popups and cross-links across content pages

    26 Juni 2026

  • feat(links): cross-linking helpers and query-driven map state

    26 Juni 2026

  • feat(card): add modal detail trigger to DataCard

    26 Juni 2026

  • feat(modal): reusable DetailModal with chips, prose body, map, and cta

    26 Juni 2026

  • fix(leaflet): stop default marker icon requests causing 500s

    26 Juni 2026

  • chore(gitignore): ignore superpowers worktrees

    26 Juni 2026

  • docs(spec): content and ux refresh spec

    26 Juni 2026

  • feat(website): full visual refresh, real photos, animations, CI

    26 Juni 2026

  • feat(pages): restyle cerita, tentang-sambelia, mitra, pariwisata detail

    23 Juni 2026

  • feat(content-pages): restyle pariwisata, irigasi, kesehatan, kegiatan, umkm

    23 Juni 2026

  • feat(peta): MapFilterChips and warm map panel styling

    23 Juni 2026

  • feat(festival): terracotta hero, CountdownStrip, themed timeline cards

    23 Juni 2026

  • feat(beranda): new hero, Kilas Sambelia, SponsorCta, themed cards

    23 Juni 2026

  • feat(shell): pill nav active states, warm wine footer, restyled 404

    23 Juni 2026

  • refactor(content): remove off-theme JPGs, point covers at on-brand SVGs

    23 Juni 2026

  • feat(assets): generate on-brand illustrated placeholders

    23 Juni 2026

  • feat(components): CountdownStrip, MapFilterChips, KilasSambelia, SponsorCta

    23 Juni 2026

  • feat(components): Pill, GradientText, restyled SectionHeader/StatCard/DataCard/MotifDivider

    23 Juni 2026

  • feat(design-system): finalize Figma-derived tokens, gradient text, shadows, motif animation

    23 Juni 2026

  • docs: visual refresh implementation plan

    23 Juni 2026

  • docs: visual refresh design spec (clean Figma-informed interpretation)

    23 Juni 2026

  • feat: Figma design reflection, Tentang Sambelia, BPS import script

    23 Juni 2026

  • docs: deploy guide + CMS content guide for non-technical team members

    22 Juni 2026

  • feat: expand content — 5 pariwisata, 3 irigasi, 3 kesehatan, 3 festival, 3 kegiatan, 4 tim, 3 cerita, 3 umkm, 3 mitra

    22 Juni 2026

  • feat: styling beautification — SectionHeader tones, card hover lift, festival hero, prose, footer gradient, warmer empty states

    22 Juni 2026

  • feat: mobile responsive — hamburger nav, responsive hero, map sidebar caps, mobile E2E

    22 Juni 2026

  • perf: trim fonts 2.9MB -> 748KB, generate static OG PNG, add typography plugin

    22 Juni 2026

  • chore: ignore test-results artifacts

    20 Juni 2026

  • fix: E2E smoke tests — use banner role, skip admin in dev (static-serve quirk)

    20 Juni 2026

  • feat: 404, robots, sitemap, OG metadata, Vercel Analytics, Playwright E2E

    20 Juni 2026

  • feat: Decap CMS admin + config + OAuth proxy (deploy-time)

    20 Juni 2026

  • feat: Peta dual-map (InteractiveMap + GisMap + MapPanel), GIS manifest builder

    20 Juni 2026

  • feat: all page routes (Beranda, Profil Tim, Pariwisata + detail, Irigasi, Kesehatan, Festival, Kegiatan, Cerita + detail, UMKM, Mitra)

    20 Juni 2026

  • feat: reusable display components (StatCard, DataCard, etc.)

    20 Juni 2026

  • feat: Logo, Nav, Footer components

    20 Juni 2026

  • feat: map marker aggregator from content collections

    20 Juni 2026

  • feat: content loaders, settings, seed content

    20 Juni 2026

  • feat: add zod schemas for all content collections

    20 Juni 2026

  • chore: set up vitest + Playwright

    20 Juni 2026

  • feat: initialize shadcn/ui + core primitives

    20 Juni 2026

  • feat: define Sasak palette as CSS variables + Tailwind tokens

    20 Juni 2026

  • fix: split Beautique Condensed into own font instance, correct serif->sans-serif fallback

    20 Juni 2026

  • feat: wire Gontserrat + Beautique Display fonts via next/font/local

    20 Juni 2026

  • fix: pin @next/mdx to ^14.2.35 to match next major

    20 Juni 2026

  • chore: scaffold Next.js 14 with TypeScript, Tailwind, MDX, static export

    20 Juni 2026

  • docs: make implementation plan local-first (stubs, no deploy until gate)

    20 Juni 2026

  • docs: add Melukis Sambelia implementation plan

    20 Juni 2026

  • docs: add Melukis Sambelia design spec

    20 Juni 2026

  • Initial commit

    20 Juni 2026