refactor: implement better transitions, better component layout organization, fixup prerender CSR asset ability

- Replace simple fade with shared-axis slide transitions (exit left,
enter right)
- Persist background/theme toggle across navigations using
view-transition-name
- Skip transitions for admin routes (separate layout system)
- Extend prerendered asset serving to support __data.json files with
MIME detection
- Extract TagChip component from ProjectCard for reusability
- Remove AppWrapper component in favor of direct page-main class usage
- Disable removeOptionalTags in HTML minifier to prevent invalid markup
This commit is contained in:
2026-01-13 18:51:02 -06:00
parent a849f91264
commit f881e03055
18 changed files with 263 additions and 336 deletions
@@ -83,8 +83,7 @@
<!-- SIZE: avatar (96px) + stroke (4px * 2) = 104px -->
<!-- POSITION: -m-1 centers the stroke ring behind the avatar -->
<div
class="absolute inset-0 -m-1 rounded-full bg-zinc-100 dark:bg-zinc-900"
style="width: 104px; height: 104px;"
class="absolute inset-0 -m-1 size-[104px] rounded-full bg-zinc-100 dark:bg-zinc-900"
></div>
<!-- Avatar circle -->
@@ -106,8 +105,7 @@
<!-- POSITION: bottom/right values place center on avatar circumference -->
<!-- For 96px avatar at 315° (bottom-right): ~4px from edge -->
<div
class="absolute size-5 rounded-full bg-green-500 border-[3px] border-zinc-100 dark:border-zinc-900"
style="bottom: 2px; right: 2px;"
class="absolute bottom-0.5 right-0.5 size-5 rounded-full bg-green-500 border-[3px] border-zinc-100 dark:border-zinc-900"
></div>
</div>