Changelog
July 2026
- Cross-link Djupet, Retur, and Diariet with /malmo
- Add Diariet's liveUrl now that it's actually deployed
- Add Diariet project page, refresh Retur's screenshots, add /malmo hub
- one-more-floor: add liveUrl now that it's deployed
- Add one more floor project page; gitignore plan/
- gitea: authenticate upstream calls so private-repo activity counts
- Add review-bot project page
- Add trace project page and case study
- Keep failure index out of runtime detail routing
- Route live failures through runtime detail page
- Keep Trace sync metadata outside Astro content
- Serve Trace failures at runtime
- Consume published failures from Trace
- Pilot Under the Hood deployment receipts
- Remove typo from project constellation
- Build interactive project constellation
- Fix failures card contrast
- Align failures hero with under-the-hood
- Add failure museum and constellation proposal
- Connect deployment receipts to Trace
- Propose Trace and failure museum
- Add Retur live and repository links
- Add Retur project screenshots
- Add Retur project and case study
- Present keep migration as complete
- Add under-the-hood architecture page
- Add fullhouse project page and case study
- Add genre breakdown to /wrapped: real tags, drawn as a stacked bar
- Add "Weekly obsessions" card to /wrapped
- Add coding-soundtrack cross-reference to /now
- Add binge/streak stats to /wrapped, computed from raw play timestamps
- Fix Spotify play-log duplication: dedupe against file state, not memory
- Speed up deploy: scope the API image to its actual dependencies
- Set liveUrl for typo and latent now that both are deployed
- Add latent project page and screenshots
- keep: document env templating on the project page
- scrawl: add manual SSH connect instructions to the project page
- scrawl: set liveUrl now that it's deployed
- Add scrawl project page and screenshots
- Add typo project page
- Add a git-fed digital pet widget to /now
- Add stash project page
- Add auto-generated /changelog page from git history
- Fix Digital Archaeologist ("legend") achievement — no discoverable hint existed
- Fix Console Inspector achievement — it was unreachable by any path
- Add Konami code escalation + robots.txt egg, fix achievements page gap
- Replace Spotify embed iframe with a static now-playing card
- Point the /now listening heatmap at the persisted play log
- Persist Spotify play history beyond the 50-play API ceiling
- Add note: Unclouding, One Tool at a Time
- Label listening sources and explain why Last.fm/Spotify drift; add Spotify to wrapped
- Add Spotify integration: now playing, top tracks/artists, listening heatmap
- Document flit watch mode across case study, project page, and site
- Update keep case study for the overview command and deploy.sh
- Add keep project page and case study
- wisp: document scoped upload invites
- wisp: set featured and liveUrl now that it's deployed
- Add wisp project page and case study
- Wrapped: include notes in the writing list, not just blog posts
- Add Wrapped link to site footer
- Wrapped: fix scoped-style bug breaking all dynamic content, polish hero
- Wrapped: add per-repo commit stats and bar chart visualizations
- Add /wrapped: a rolling 365-day recap
- Delve: add cross-game lore compendium
- Projects: sort by date instead of manual weight, add explicit featured flag
- Between Descents: update project, case study, and delve subsite for competitive mode
- Hall of Winners: show character_name in Name column, player_name in Keeper column
- Replace stale side-projects list on CV with a link to /projects
- Replace stale side-projects list on CV with a link to /projects
- Add npm-statuspage screenshot (AVIF)
- Add Djupet case study and link via projectSlug
- Add Djupet project card with screenshots
- Add Djupet project card
- Add recently active repos to /now commits card
- Add status page link to homelab case study
- Add npm-statuspage project card; link status page from homelab
- Update homelab case study with user edits
- Clarify SSH deploy step is intentional, not a workaround
- Rewrite homelab case study from actual topology
- Link homelab case study from homelab page
- Add 2048 screenshots and wire images to project card
- Add 2048 and homelab case studies; add 2048 project card
- Reorder /delve sections; add floating TOC with scroll-spy; fix footer
- Move Between Descents after world detail, Hall of Winners last
- Restructure /delve: world intro first, three games in order, world detail below
- Improve /delve contrast: raise muted/dim/dimmer and fix ability green
- Add combined Hall of Winners table to /delve subsite
- Fix heatmap CORS — proxy Gitea heatmap through local Express API
- Add Gitea commit heatmap to /now; write FUTURE.md with backlog ideas
- Add Delve: Between Descents — project card, case study, screenshots, /delve section
- Move games portal link to sidebar Games label where it's actually visible
- Update game URLs to games.goonk.se; surface portal in footer and projects page
- Update waste-go images to new screenshots
- Add repoUrl support; surface repo badges on project list, detail, and case study pages
- Add projectSlug to waste-go case study so subsite badge renders
- Rewrite f1-dashboard, galr, waste-go case studies for consistent style
- Rewrite Delve case study; fix stale domain in project body
- Update Delve live URL to delve.dev.xplwd.com
- Replace deckbuilder screenshots with distinct map and combat views
- Add delve-deckbuilder project card, case study, and /delve subsite section
- Add project sidebar with Tools/Games grouping, cap thumbnail heights
- Add rack project, case study, and screenshots
- Updating flit project files.
- Update flit case study: daemon details, scanner, stack corrections
- Add flit project, case study, and waste sub-site section
June 2026
- Admin for notes, first note, visibility on front page.
- Consolidate nav: add Writing hub, move Homelab to footer
- Add /notes section — English tech writing, separate from Swedish blog
- Trim live site badge display to hostname only
- Show both sub-site and live site badges across all project surfaces
- Add /pitwall sub-site for the F1 dashboard
- Add /delve sub-site and sub-site badges on projects index
- Add /now page, snippets admin section, and light admin theme
- Photos.
- Text fixes.
- in pro
- Link waste-go repo correctly on /waste sub-site
- Fix project schema: allow relative URLs, not just absolute
- Surface /waste sub-site from project page, case study, and homepage
- Add expandable screenshot lightbox to /waste, include web2.png (file UI)
- Add /waste sub-site with distinct visual identity
- Add real LinkedIn testimonials to CV
- CV: collapse fun sections into toggles, add F1 case study link
- Polish hiring page, align office preference, remove testimonial placeholder
- Improve CV and highlights: impact numbers, case study links, testimonial, what I'm looking for
- Add waste-go case study and project entry, bump sort orders
- Remove duplicate blog post (manually created, superseded by admin-saved version)
- Fix git-sync for production: pass content directly to avoid disk dependency
- Add blog admin UI with git-sync
- Add Immich photo gallery and tidy up photos page
- Add now playing widget and homelab topology diagram
- more last.fm fixes.
- Wire up local dev proxy and dotenv for API sidecar
- Add Express API sidecar with Last.fm endpoint
- text fixes.
- Styling for pre-tags and some content fixes.
- Blog highlight on frontpage.
- Add chaos mode and text jiggle easter eggs
- Update PSBloggen case study and project with R2 storage and architecture corrections
May 2026
- Add PSBloggen migration project and case study
- Better print
April 2026
- Add mobile/responsive improvements
- Ensure hiring is a bit less opaque.
- More text polishing.
- Minor tweaks
- Language polish
- Remove tracking
- pimping things up.
- Minor text-tweaks, remove an achievement
- Title issues, synergy, dark mode for search.
- ToC, search and better opengraph
- Dark mode + archive.
- feat: Complete blog migration from WordPress
- Sanity checks
- Opengraph mess.
- print css, opengraph
- OpenGraph image.
- SEO
- Case studies and analytics
- More paints.
- feat: add 4 new easter eggs and improve site functionality
- feat: improve selling copy, expand projects display, and fix easter eggs
- Easter eggs.
- Adding more silliness.
- Refactor content to use markdown snippets and update tone
- Add PDF export functionality to CV page
- Add profile photo to CV page
- Improve mobile responsiveness
- Fix CSS loading in production build
- Add screenshot galleries for F1 dashboard and Delve projects
- Initial commit: Astro portfolio site