- Add MarkdownViewer, JsonViewer, SkillExplorer components with Code/Preview toggle, search (Cmd+F), TOC sidebar, and gradient fade expand/collapse
- Add FileTreeSidebar for skill file navigation (starts collapsed)
- Make file tree panel stretch to match content height
- Green download badge with icon on detail pages
- Remove Add to Stack button and sidebar collapse functionality
- Metadata displayed as clickable label pills with modal
- Add marked dependency for client-side markdown rendering
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Migrate all API endpoints from api/ (Vercel serverless) to dashboard/src/pages/api/ (Astro routes)
- track-download-supabase, track-command-usage, track-installation-outcome, track-website-events
- collections (index, [id], items)
- health-check, claude-code-check, discord/interactions
- Add shared API libs: cors.ts, neon.ts, auth.ts, changelog-parser.ts
- Add @supabase/supabase-js, @neondatabase/serverless, discord-interactions, @clerk/backend deps
- Remove catch-all API proxy ([...path].ts) - APIs are now native Astro routes
- Serve components.json and trending-data.json from dashboard/public/
- Switch to same-origin fetching (relative URLs) for data files
- Add dashboard/vercel.json with crons and CORS headers
- Simplify CI/CD to single deploy target (dashboard project)
- Update deploy script and package.json scripts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move VERCEL_ORG_ID, VERCEL_SITE_PROJECT_ID, and
VERCEL_DASHBOARD_PROJECT_ID to .env. Deploy script and deployer
agent now read from environment variables instead of hardcoding.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit includes several updates to the blog:
- Adds a new blog post creation command.
- Updates existing blog articles with new content and fixes.
- Regenerates blog images with a new script.
- Fixes a rendering issue in the skills-creator article by adding the necessary JavaScript for code block styling.
- Generated 4 blog cover images using Google AI Nano Banana (gemini-2.5-flash-image)
- Created generate_blog_images.py script for automated image generation
- Images: frontend-developer-agent, code-reviewer-agent, context7-mcp, skills-creator
- Professional tech/terminal aesthetic with orange accent colors
- 16:9 aspect ratio optimized for blog headers
- Move Google API keys to .env file (not tracked by git)
- Update generate_blog_images.py to use dotenv
- Update generate_blog_images_v2.py to use dotenv
- Add GOOGLE_API_KEY to .env.example
- Add critical security section to CLAUDE.md about never hardcoding secrets
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
New Blog Posts:
- code-reviewer-agent: Guide for automated code reviews
- context7-mcp: Context7 MCP integration guide
- frontend-developer-agent: Frontend development with Claude
- skills-creator: Creating custom Claude Code skills
New Scripts:
- generate_blog_images.py: Generate blog post images
- generate_blog_images_v2.py: Enhanced image generation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>