Loading home page
Published Scroll Minimap with mirrored left and right placement, container-aware tracking, a conversation demo, and inline installation source.
Added server and browser diagnostics for GitHub contribution and profile-stat requests, including missing-token, network, response, and render details.
Refreshed the profile with the Vietnamese display name, current freelance role, richer experience stacks, and theme-aware generated avatars.
Added local-time handwritten greetings and a dimensional dotted map to the cover.
Rebuilt the GitHub contribution heatmap with responsive cells and theme-safe activity animation.
Redesigned the section minimap with proximity animation, live scroll tracking, detail popovers, and subtle sound feedback.
Hardened animated theme changes against repeated input and added consistent SoundCN feedback to copy and toggle actions.
Moved secondary pages into an icon-led navigation menu and added source inspiration to the footer.
Every page — including the new World Cup page — is now reachable from the ⌘K command palette.
Retired the experimental AI blog and its weekly cron writer.
The site now builds without any secrets — database and Redis clients connect lazily.
Added a World Cup 2026 page with live scores and match detail, reached from a new “etc” menu in the header.
Restructured the tech stack into titled category rows for faster scanning.
Added a Components page — a live showcase of UI built for the site: tags input, code block, and terminal block.
Added this changelog page — a timeline of big milestones, linked from the header.
Added a ⌘K command palette with section navigation, project search, social links, and quick actions.
Shipped a page-view counter backed by Drizzle and Redis dedup, with a cumulative views chart.
Animated dotted world map on the cover, marking Ho Chi Minh City.
Typing animation cycling through roles in the profile section.
Root-level error boundary so failures land softly instead of a blank screen.
Added a bookmarks section — a public reading log of tools and resources.
Dedicated project detail pages with image galleries, zoom, and richer descriptions.
Profile download menu — export the resume as PDF, Markdown, or JSON.
Experience, education, certifications, and awards sections, plus a table-of-contents minimap.
Full SEO pass — metadata, OG image, sitemap, robots.txt, and llms.txt.
Top scroll progress bar and a sound engine wired to the @soundcn registry.
Hero cover, profile, overview, and social-links sections built out.
Coding section with a GitHub contribution heatmap and activity stats.
New sticky header with theme toggle and profile constants.
Dropped i18n entirely — the site is now English-only.
Turborepo + Next.js scaffold with a shared `@repo/core` package.
Husky, lint-staged, commitlint, and GitHub Actions CI.
Canonical profile data lives in `content/profile/*.md`.