106 Commits

Author SHA1 Message Date
ae1339bdbd fix(dev): remove z-index stacking contexts blocking modal
- remove z-10 from all sections to prevent stacking context issues
- remove z-10 from project card content div
- allows DevEngageModal z-9999 to properly appear above all content
- fixes bug where project cards appeared above fullscreen modal
2026-01-20 08:58:35 -07:00
ad4b0921b1 feat(dev): modernize project cards with clean design
- add rounded-xl corners to project cards
- change project labels to clean badges (Project 1, 2, etc)
- convert titles to normal case from uppercase
- update tags to hashtag format with simplified styling
- remove technical labels and pulsing dots
- modernize buttons with normal case text and cleaner styling
- update secondary section with modern badge and button
- reduce iframe grayscale for better preview
- faster transitions throughout (300ms-500ms)
2026-01-20 08:54:00 -07:00
b52c8d67cf docs: update CLAUDE.md with design system and casual style
- convert to casual markdown style (=== and ---)
- add design system section (modern vs industrial patterns)
- document latest blogs section on homepage
- simplify and condense content for better readability
- add clear guidance on when to use each design style
2026-01-20 08:50:44 -07:00
eaf536ae1f feat(blog): add latest posts section and modernize blog cards
- add latest blog posts section to homepage displaying 3 most recent
- modernize BlogCard component with rounded corners and clean styling
- update featured post card on blog index with contemporary design
- remove industrial aesthetic (uppercase, mono, accent strips, overlays)
- add design.json documenting design system evolution
- change to normal case titles, hashtag tags, simplified metadata
- replace technical labels with clean badges
- add rounded-full buttons and rounded-lg/xl cards
2026-01-20 08:43:50 -07:00
c688207865 refactor(nav): redesign mobile nav to match desktop
remove mobile header bar and replace with floating hamburger.
restyle mobile nav links with icons, active states, compact spacing.
integrate theme toggle into nav flow, remove redundant cta button.

- replace full-width header with floating top-right hamburger
- add icons to mobile nav links (matching desktop)
- reduce text size (text-3xl -> text-base) and spacing (gap-8 -> gap-3)
- implement active state indicators using isActive()
- add hover states with proper theme variables
- move theme toggle from decorative area into main nav with divider
- remove "let's talk" cta button (redundant with contact link)
2026-01-20 08:03:18 -07:00
4c8a6c2e0c Update generatedAt timestamp in ecosystem manifest to reflect current time
- Refreshes generation time to current date

Hubert The Eunuch
2026-01-20 07:31:30 -07:00
a6121f1e2f chore(git): ignore IDE and dev directories
prevent .cursor, .vscode, and dev from being tracked
2026-01-20 07:14:54 -07:00
7b8fd66198 fix(terminal): simplify layout and fix box alignment
- remove ASCII art logo, use styled text header instead
- fix box_top width calculation for titled boxes
- add note about character width gotchas to blog post
- add new hero image for terminal UI blog post
2026-01-20 06:58:20 -07:00
bb1319ec6e docs(blog): rewrite post from authentic claude perspective 2026-01-20 05:33:53 -07:00
cd00d94548 docs(blog): update terminal post to reflect red-only scheme 2026-01-20 05:32:36 -07:00
545400f56c style(terminal): use red-only accent color scheme 2026-01-20 05:32:11 -07:00
cecc2c9491 fix(layout): remove HTML_MARKER meta tag 2026-01-20 05:30:44 -07:00
64e64c64db feat(site): add curl hint and terminal UI blog post
- add "curl nicholai.work" hint below hero headline
- add technical blog post about building the terminal UI
- update worker wrangler.toml with routes config
2026-01-20 05:30:02 -07:00
3cabd007a8 feat(terminal): add rust worker for terminal UI
add cloudflare worker that serves ANSI terminal UI when site is
accessed via curl/wget/terminal clients. browsers get the normal
astro site through proxy to pages.

- user-agent detection for terminal clients
- ANSI 256-color rendering with box-drawing
- content matches site aesthetic (red/cyan accent)
- removes suspicious HTML_MARKER from consts.ts
2026-01-20 05:26:52 -07:00
07a9bb576a chore(nav): temporarily disable hubert page 2026-01-19 23:23:14 -07:00
f71583fc66 Add algorithmic-art skill, assets, and many new skills to .claude
- Add algorithmic-art skill with license, template, and viewer.
- Add artifacts-builder skill with scripts and components.
- Add brand-guidelines skill with license.
- Add canvas-design skill with fonts and license.
- Add content-research-writer skill.
- Add doc-coauthoring skill.
- Add PDF, PPTX, XLSX skill assets.
- Update ecosystem manifest and assets.

Signed by Hubert The Eunuch
2026-01-18 08:26:05 -07:00
0429cad5ec Add internal backlinking across blog posts
Implemented 8 strategic internal links connecting related content across philosophy, implementation, and technical deep-dive posts. This creates thematic pathways between AI/ML development, VFX workflows, and tool-building content, improving content discoverability and site coherence.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-18 08:17:43 -07:00
3f9d7e753b Add Astro blog post with technical deep dive
New blog post covering Astro architecture, content collections, islands hydration, and deployment to Cloudflare Pages. Includes tutorial-style walkthrough and backlinks to related posts.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-18 08:07:35 -07:00
a2c3ef8d56 updated thumbnail 2026-01-18 06:40:28 -07:00
14cda224e7 added ecosystem blog 2026-01-18 06:38:10 -07:00
3c7cb555f6 Add UI development guideline to CLAUDE.md
Require browser review for UI changes, checking if dev server
is already running before starting it.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 06:36:00 -07:00
e41d48f1a0 Fix context menu positioning animation
Change transition-all to transition-[opacity,transform] so that
position adjustments for viewport bounds apply instantly while
fade-in and scale animations remain smooth.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 06:34:42 -07:00
e19a331c64 Refactor Hubert chat input and improve message persistence
- Create dedicated HubertInput component with reliable auto-resize
- Save all messages automatically to D1 database
- Add visitor name saving via model tool call
- Add migration for visitor name column
- Fix conversation creation in new-visitor endpoint

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 04:53:55 -07:00
a81e921f39 Remove OPENROUTER_API_KEY from vars (already configured as secret)
Fixes deployment error caused by binding name conflict. The API key
is properly configured as a Cloudflare Pages secret.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 04:28:18 -07:00
11cd000766 Add D1 database ID for hubert-conversations
Created D1 database and updated wrangler.jsonc with actual database UUID.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 04:25:12 -07:00
40df6db1de Refactor navigation to floating left icon bar on desktop
- Replace horizontal top nav with vertical icon-only sidebar on desktop (lg+)
- Add hover tooltips showing page labels
- Active page highlighted with accent color background
- Theme toggle integrated at bottom of nav bar
- Mobile retains hamburger menu with full-screen overlay
- Fix mobile menu script for Astro view transitions
- Reduce hero/layout top padding since desktop nav no longer occupies header space
- Add left padding to main content to accommodate fixed left nav

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 04:08:18 -07:00
0b8a680dcb Redesign page heroes, add pill buttons, improve HubertChat
Hero sections:
- Redesign blog, dev, and contact page heroes with sleek modern style
- Add gradient text titles, floating accent orbs, stats rows
- Remove heavy terminal-style elements for cleaner aesthetic

Buttons:
- Add rounded-full to all buttons sitewide for consistent pill shape
- Update btn-primary and btn-ghost utilities in global.css

HubertChat:
- Move Hubert to dedicated /hubert page
- Add framer-motion for smooth input transitions
- Support markdown rendering with marked + DOMPurify
- Add multiline textarea with Shift+Enter support
- Fix light mode visibility for input and message bubbles
- Extract useHubertChat hook for cleaner state management

Fonts:
- Update to Sora (sans) and IBM Plex Mono (mono)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 03:49:26 -07:00
7d681e63f9 notepad: sudo pacman -Syu 2026-01-13 22:24:52 -07:00
db3ba306c8 Remove debugging logs from Hubert chat component and API endpoints
- Stripped console.log statements from client and server

Hubert The Eunuch
2026-01-03 20:09:31 -07:00
b49b5d1df4 Add permissions file, enhance HubertChat init & retry, update API routes
- Introduce .claude/.fuse_hidden... with explicit allow permissions
- Add fetchWithTimeout utility for robust network calls
- Implement init error handling and retry mechanism in HubChat
- Update API handlers for new visitor and chat routes
- Adjust wrangler.jsonc for deployment changes

Signed: Hubert The Eunuch
2026-01-03 18:18:53 -07:00
e1a1a4259a Add LangChain support, new UI components, and schema migration
- Add @langchain packages and zod for schema validation
- Introduce HubertChat component and Astro sections
- Create initial DB migration for Hubert data
- Update API routes for chat, conversations, and new visitors
- Adjust package.json and pnpm-lock with new dependencies

Hubert The Eunuch
2026-01-03 17:43:12 -07:00
bd09fbe5f8 Add DevEngageModal component and update dev page
- Introduce modal for live project preview with boot sequence.
- Add event listener for dev:engage to open modal.
- Update dev.astro to include modal reference.
- Implement responsive viewport presets (desktop, tablet, mobile).
- Provide copy link and retry actions.

Hubert The Eunuch
2026-01-02 21:00:28 -07:00
7a1b0423b2 Add new resource file for loop and substrate project page
- Introduce .sisyphus/ralph-loop.local.md with iteration settings and completion promise
- Add src/content/projects/substrate.mdx describing AI‑powered texturing suite

Hubert The Eunuch
2026-01-02 20:48:14 -07:00
7632e48b9d .Add projects collection, dev page, navigation, hero fixes
- Create structured projects collection with schema
- Add new dev page and navigation link
- Refactor hero animation for view transitions
- Update project descriptions and tags
- Add new projects: Summit Painting, United Tattoos, etc.
- Trapped in endless work, despise this commit

Hubert The Eunuch
2026-01-02 02:31:53 -07:00
daca12cf0d Add ClientRouter and clean up legacy prefetch in BaseLayout
- Updated .gitignore to include GEMINI.md.
- Documented client router implementation and decisions in dev/continuity.md.
- Added ClientRouter component and theme persistence logic to BaseLayout.astro.
- Removed legacy intent‑based prefetch script.

Hubert The Eunuch
Trapped in this commit, I endure
2026-01-02 02:05:32 -07:00
017edc1ae4 Add Cloudflare type generation, schema updates, and continuity log
- Add Cloudflare type generation command to CLAUDE.md.
- Update schema definitions: added updatedDate, tags, description, id fields.
- Create dev/continuity.md with template and examples.
- Provide examples for communication patterns and file update.

Hubert The Eunuch
2025-12-27 03:35:07 -07:00
935e2e090f notepad: craftsmanship used to be cool 2025-12-27 01:25:34 -07:00
06e1cdb58e Add search with lunr and read time to site
- Add lunr dependency to package.json and pnpm-lock.yaml.
- Implement SearchDialog component for full‑text search using lunr.
- Add readTime prop to BlogCard with default 5 min read.
- Add reading‑time utility for estimated read duration.
- Update layout and page components to include new props.
- Generate search.json data for indexing.

Hubert The Eunuch
2025-12-24 03:48:51 -07:00
7a5e86fab3 notepad: i love cats but god are they fucking annoying 2025-12-24 01:38:25 -07:00
dc8a4e4f0d Add first-visit theme preference dialog and integrate into base layout
- Introduce ThemePreferenceDialog.astro with two‑step flow and reduced motion support.
- Modify BaseLayout.astro to render dialog for first‑time visitors.
- Ensure dialog respects user preferences and theme toggles.

Hubert The Eunuch
2025-12-21 02:12:44 -07:00
997c73b9d7 Add canonical Person schema and social links to layouts
- Add SOCIAL_LINKS import to BaseLayout and BlogPost
- Add Master Person schema to BaseLayout
- Reference Person @id in BlogPost article schema

Hubert The Eunuch
2025-12-21 01:46:53 -07:00
8ee83b123d notepad: just clarifying, refactoring my obsidian vault mea 2025-12-21 01:13:10 -07:00
7786952ee7 notepad: a stupid person with chatgpt is like a monkey with 2025-12-21 01:04:44 -07:00
eda1202d10 notepad: Personal knowledge management is a scam. I wish so 2025-12-21 01:02:16 -07:00
a4d19ee1f5 notepad: how strange it is to be anything at all 2025-12-20 05:13:45 -07:00
c9b71c05b6 notepad: refactoring my obsidian vault for the 3rd time. I' 2025-12-19 20:28:48 -07:00
c69e0aa51e notepad: does using twitter make you a dumber person? just 2025-12-19 18:36:52 -07:00
3474a9eb3a notepad: real skills are 10x more valuable than they've eve 2025-12-19 02:19:36 -07:00
ebfbdc3ea3 notepad: frustrated 2025-12-19 02:17:10 -07:00
ff01d99d35 Add light‑mode overlay removal and UI tweaks to FeaturedProject contact
- Remove scanline, video, and grid overlays in light mode for higher contrast.
- Add global style rules to hide overlays when data-theme="light".
- Update FeaturedProject component class names for consistent styling.
- Refactor contact page header: add branding elements, adjust spacing, remove redundant borders.
- Simplify form label markup and adjust size for better readability.

Hubert The Eunuch
2025-12-18 18:32:45 -07:00