Astro file-based routes. Each .astro file maps directly to a URL path. Currently contains the homepage and the About page.
| File | Description |
|---|---|
index.astro |
Homepage (/) — bento-grid layout with intro, photo, tools carousel, project tiles, and sidebar |
about.astro |
About page (/about) — animated design-process slider, experience, tools, and contact |
src/pages/foo.astro — it becomes available at /foosrc/pages/projects/clm.astro etc.<BaseLayout> and use semantic token classes exclusively| Page | Mobile/Tablet | Desktop (xl:) |
|---|---|---|
index.astro |
flex-col, natural scroll |
flex-row, h-dvh, overflow-hidden — no page scroll |
about.astro |
flex-col, min-h-dvh |
CSS grid 2-col, h-dvh, overflow-hidden |
[...tools, ...tools]) to enable a seamless infinite loop via translateX(-50%) animation in global.cssabout.astro uses an inline <script> with an AbortController for event cleanup across View Transitions; the pattern is initSlider() called on load and re-called on astro:after-swaphref prop render as non-interactive <div> elements (work in progress / coming soon)src/layouts/BaseLayout.astrosrc/components/ui/*src/assets/images/*src/assets/icons/* (via Icon.astro)