* feat(website): Implement SEO/GEO Phase 2 meta tag optimizations
- Optimize homepage title from 71 to 60 chars for better SERP display
- Optimize homepage description from 194 to 155 chars (Google recommended)
- Optimize blog page description from 127 to 155 chars with more details
- Update OG descriptions to match new meta tags
- Maintain brand consistency across all meta tags
Expected impact: +5% click-through rate from search results
* feat(website): Add OG tags and JSON-LD schema to compare page (Phase 1)
- Add comprehensive Open Graph meta tags for better social sharing
- Add Twitter Card tags for improved preview on Twitter/X
- Add JSON-LD WebPage schema with Table mainEntity
- Add SpeakableSpecification for voice search optimization
- Improves social media visibility and AI search citations
* feat(website): Add authority citations and HowTo schema (Phase 3)
- Add Princeton NLP and AgentSkills.io citations to seo-geo FAQ answer
- Add HowTo schema with 3-step installation guide (PT30S)
- BreadcrumbList schema confirmed present in skill pages
- Improves AI search engine trust and featured snippet eligibility
Limit OG image height to 200px on blog list page:
- Set max-height on image container
- Use object-fit: cover for consistent sizing
- Center crop images with object-position
- Prevents images from dominating the card
Images now act as proper thumbnails instead of full-size banners.
Display custom OG images as thumbnails on /blog page:
- Show OG image at top of each blog card
- Add hover effect on images (opacity transition)
- Responsive layout with proper spacing
- Images are clickable links to blog posts
Improves visual appeal and helps users identify content quickly.
* fix(website): display skill dependencies by handling object format in skills.json (#15)
* feat(website): upgrade auth structure with keys array and display dependency API keys
* feat(website): display skill installation counts from skills.sh (#13)
- Add scripts/fetch-install-stats.py to scrape install counts
- Add GitHub Action to run daily and update install-stats.json
- Update worker.js to show install count badges on skill cards and detail pages
- Generate initial install-stats.json
Closes#12
* feat(blog): add FAQPage schema and dateModified for GEO optimization
- Add FAQ items to blog posts 2 & 3 (domain-hunting, what-is-opc)
- Add dateModified field to all blog posts for freshness signals
- Add additional citations to improve AI search visibility
- Change install command to include all dependencies directly
- Simplify note to just mention what's required
- Makes it clearer that dependencies are auto-included in the command
- Title: Claude Code Skills for Solopreneurs | AI Tools for One-Person Companies
- H1: Claude Code Skills for Solopreneurs (preserves brand uniqueness)
- Description: Claude Code skills FOR solopreneurs (target audience + SEO keyword)
- FAQ: 'What are Claude Code skills for solopreneurs?' (long-tail, low competition)
Strategy: Combine high-volume keyword 'Claude Code skills' (1,000/mo) with
unique positioning 'for solopreneurs' (near-zero competition) to capture both
search traffic AND brand differentiation.
Benefits:
- SEO: 'Claude Code skills' at front of title (Google priority)
- Brand: Solopreneur/indie hacker positioning maintained
- Conversion: Clear target audience (one-person companies)
- Competition: Unique angle vs generic 'developer tools'
- Change title: Claude Code Skills & Extensions | 10+ AI Agent Tools
- Update H1: Claude Code Skills & Extensions (from solopreneur focus)
- Update meta description with Claude Code focus (1,000/mo vs 30/mo search volume)
- Add 3 new FAQs targeting high-search queries:
* What are Claude Code skills?
* How do I install Claude Code extensions?
* Are these skills compatible with Cursor AI?
- Update og:tags and twitter cards with new messaging
- Optimize for developer audience vs solopreneur (33x search volume difference)
Based on DataForSEO keyword research showing 'Claude Code skills' has 1,000/mo
searches vs 'solopreneur tools' 30/mo.
- Add logo-creator skill with complete workflow:
- Discovery: style, ratio, colors, references
- Generate: 20 variations with nano-banana-pro
- Preview: interactive HTML gallery
- Iterate: refine based on user feedback
- Finalize: crop, remove bg, vectorize to SVG
- Include scripts: crop_logo.py, remove_bg.py, vectorize.py
- Add style reference guide and example conversation
- Update website to use new OPC crowned person logo (logo-09.svg)
- Update skills.json with logo-creator skill entry
- Add requesthunt skill with 5 Python scripts for RequestHunt API
- Scripts: list_requests, search_requests, get_topics, get_usage, scrape_topic
- Update install.sh to include requesthunt in available skills
- Update skills.json and worker.js fallback with requesthunt entry
- API base: https://requesthunt.com, requires REQUESTHUNT_API_KEY
- Update getFallbackConfig() to use user/project nested install structure
- Add missing producthunt skill and dependencies field to fallback
- Add opencode and codex platforms to fallback config
- Add API key detection: show 'already configured' if env var is set
- Update Next steps to only show config prompt when keys are missing
- Move auth badge next to GitHub icon in card header
- Put domain-hunter as first skill
- Add resciencelab-logo.svg
- Update .gitignore for node_modules and .wrangler
Instead of showing all platforms at once, now uses:
- Level tabs: User-level / Project-level
- Platform tabs: Claude / Droid / OpenCode / Codex / Cursor
Shows single install command based on selection, cleaner UI
Based on research:
- OpenCode: ~/.config/opencode/skills (user) / .opencode/skills (project)
- Codex: ~/.codex/skills (user) / .codex/skills (project)
Updated:
- install.sh: OpenCode/Codex directories, help notes about codex --enable skills
- skills.json: Added opencode/codex install commands for all skills
- website: Show OpenCode/Codex in both user and project tabs
- User-level: ~/.claude/skills - available across ALL your projects
- Project-level: .claude/skills - shared with team in current repo
Updated:
- install.sh: Better docs, clear distinction between levels
- skills.json: Separate install commands for user/project levels
- website: Tab UI to switch between user/project install commands
- skills.json: Added 'dependencies' field for each skill
- domain-hunter depends on twitter and reddit skills
- install.sh: Auto-installs dependencies (use --no-deps to skip)
- website: Shows dependency info on skill cards
- skills.json: Centralized config with metadata, auth, install commands
- website/: Cloudflare Worker for opc.dev landing page
- Reads skills from skills.json with GitHub API caching
- Removed MCP servers, focused on OPC skills only