Sorry for not doing devlogs, I totally forgot about it. Anyway, I’ve retraced my steps. Here’s the breakdown:
hour1
-initialized vite project with react and typescript
-set up tailwind css with custom olive and offwhite color tokens
-initial commit with a clean boilerplate
hour2
-added global styles and the noise overlay for that tactile feel
-configured lucide-react and framer-motion dependencies
-refined tsconfig to handle absolute paths and strict typing
hour3
-built the core Section component with unified padding and theme support
-set up the navigation structure with mix-blend-difference
-drafted the initial header typography and editorial layout
hour4
-implemented the HeroPortrait component with blend modes
-fleshed out the home section with a heavy emphasis on serif typography
-refined the navigation link animations and mobile menu state
hour5
-started the InteractiveGrid component
-implemented mouse-tracking logic for the background magnification
-spent way too much time on the math to make the grid feel “magnetic”
hour6
-built the base Cursor component using framer-motion’s useSpring
-added the trailing ring effect for a weighted, liquid movement
-set up the reactive state for hovering over clickable element
hour7
-implemented “Cursor Intelligence”: detecting site-wide theme changes
-made the cursor auto-invert its colors when crossing into dark sections
-added data-attribute tracking so specific UI elements trigger cursor states
hour8
-designed the Terminal component UI (backdrop blurs and glassmorphism)
-wrote the rust code snippet for the “technical” about section
-set up the initial character-by-character display logic