56 Commits

Author SHA1 Message Date
Yilin Jing cb8e1af616 fix(blog): format post dates in UTC
new Date("2026-09-14") parses as UTC midnight, so toLocaleDateString in
a negative-offset zone rendered the previous day - every post's card and
byline could disagree by one day.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 05:00:04 -04:00
Yilin Jing bf146fc136 fix(website): stop skill cards overflowing their grid track
The skills grid had a single implicit `auto` column, which sizes to
max-content and let every card render 907px wide inside an 852px
container - so the cards sat 55px wider than the hero, the header and
the new promo card. Pin the track to minmax(0, 1fr), and let the API-key
row wrap now that it can no longer stretch the card.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 04:54:37 -04:00
Yilin Jing 4c8fbf366c refactor(website): drop install command from promo, use site + GitHub CTAs
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 04:50:39 -04:00
Yilin Jing e3a15fcbe0 refactor(website): move super-prototyping promo above the skills grid
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 04:35:16 -04:00
Yilin Jing e71b28582e feat(website): promote super-prototyping on opc.dev
Add a "More from ReScience Lab" section below the skills grid featuring
the super-prototyping plugin: banner, description, install command and
links to the repo and prototyping.rescience.com. Also link it from the
footer.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 04:33:07 -04:00
Yilin Jing bafcdc3581 docs(requesthunt): update examples and website to CLI commands
- Replace Python script references with CLI equivalents in calendar-app example
- Update FAQ in worker.js: scrape_topic.py → requesthunt scrape start
- Update fallback config command in worker.js
- Update usage output to unified credits model
2026-03-31 18:13:32 +08:00
Yilin Jing d841fc4c59 fix(worker): handle missing commands array in skill cards 2026-02-23 16:05:32 +08:00
Yilin Jing dcca085a7b feat(archive): add logo, install commands, and listing for archive skill
- Add archive.svg logo to skill-logos/
- Add logo, auth, and install fields to archive entry in skills.json
- Add archive to README.md skills table
- Add archive to worker.js compare page data
2026-02-23 15:11:57 +08:00
Yilin Jing 1e17de4741 fix(install): replace curl install.sh with npx skills add
Replace all curl-based install commands with npx skills add across
skills.json and website/worker.js. The install.sh endpoint was returning
404 causing installation failures (fixes #55).

- Replace curl install.sh commands with npx skills add equivalents
- Redirect /install.sh to GitHub README installation section
- User-level: npx skills add ... -a <agent>
- Project-level: npx skills add ... (default)
2026-02-23 14:23:16 +08:00
Yilin Jing a9f8fdaec9 feat(blog): Update blog list to 3-column grid with full OG images 2026-02-05 00:53:22 +08:00
Yilin 57b338c91f feat(website): Complete SEO/GEO Phase 1, 2 & 3 optimizations (#28)
* 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
2026-01-28 18:49:03 +08:00
Yilin 5a84819756 fix(blog): reduce OG image thumbnail size on blog list (#24)
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.
2026-01-27 01:00:04 +08:00
Yilin 7b975fd81f feat(blog): add OG image thumbnails to blog list page (#23)
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.
2026-01-27 00:49:27 +08:00
Yilin 4fb091758c fix(website): improve API key info alignment on skill detail page (#17) 2026-01-23 20:16:43 +08:00
Yilin 80eb9362d2 fix(website): display skill dependencies and API keys with clickable URLs (#16)
* 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
2026-01-23 19:41:03 +08:00
Yilin 6f1d65ca40 feat(blog): add FAQPage schema and dateModified for GEO optimization (#14)
* 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
2026-01-23 18:46:04 +08:00
Yilin Jing 641a84558a feat(blog): add blog system with first post, navbar integration, and SEO/GEO optimization 2026-01-21 18:51:09 +08:00
Yilin Jing 05fa9e5ab0 feat(geo): add llms.txt, /compare page, expand FAQs to 30+ 2026-01-21 18:18:44 +08:00
Yilin Jing f7c2f93df5 fix(schema): remove duplicate FAQPage microdata, keep only JSON-LD 2026-01-21 18:05:17 +08:00
Yilin Jing ef28ba9ff9 fix: correct speakable CSS selectors in schema markup 2026-01-21 17:52:07 +08:00
Yilin Jing 1253ce4c13 feat: add animated logo scroller showcasing 9 supported AI platforms with gradient effects and hover pause 2026-01-21 16:22:08 +08:00
Yilin Jing afd7b60e07 feat: update hero section with compatibility note and adjust styling 2026-01-21 13:39:04 +08:00
Yilin Jing c378cd4313 feat: optimize skill page install section with copy button 2026-01-21 13:12:55 +08:00
Yilin Jing 67598c6184 feat: show dependencies in main install command
- 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
2026-01-21 12:56:19 +08:00
Yilin Jing 6d1728cce0 fix: add back opc-banner image to hero section 2026-01-21 12:50:50 +08:00
Yilin Jing 1347a447dc refactor: remove install.sh script and update installation instructions 2026-01-21 12:48:33 +08:00
Yilin Jing a63ff1e1fd feat(seo): enhance robots.txt and FAQ content for AI agent skills 2026-01-21 02:48:31 +08:00
Yilin Jing eae0d96cf1 feat(seo): optimize with solopreneur + Claude Code combined strategy
- 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'
2026-01-21 02:40:45 +08:00
Yilin Jing f597593da6 feat(seo): optimize for Claude Code keywords, add 3 new FAQs
- 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.
2026-01-21 02:37:11 +08:00
Yilin Jing a62e2ffa51 feat(seo-geo): add Python scripts, fix audit detection, update robots.txt for AI bots 2026-01-21 01:41:21 +08:00
Yilin Jing 42626e83ae feat(seo): optimize for English market with solopreneur/indie hacker keywords, visible FAQ section, and stats bar 2026-01-20 18:08:26 +08:00
Yilin Jing 2c8c555bb2 feat(seo): add GEO optimizations with FAQPage schema, speakable markup, and enhanced structured data for +40% AI visibility 2026-01-20 17:32:32 +08:00
Yilin Jing cf3996655a fix: remove localhost fallback and hardcoded example content for production deployment 2026-01-20 17:01:52 +08:00
Yilin Jing 1f00074f13 feat(seo): add JSON-LD structured data, meta tags, image optimizations, and enhance sitemap 2026-01-19 22:04:27 +08:00
Yilin Jing de0c902d77 feat: add opc.dev/install.sh short URL for easier installation 2026-01-19 21:57:38 +08:00
Yilin Jing 0c0d905724 feat: add OG 2026-01-19 21:50:04 +08:00
Yilin Jing 776a4ba9e9 fix: add width:100% to .hero-install for proper centering on narrow screens 2026-01-19 19:05:32 +08:00
Yilin Jing 7b0d68da8d Add custom pixel art logos for all 8 skills 2026-01-19 18:49:02 +08:00
Yilin Jing c5d52376de Invalidate old cache with new cache key 2026-01-19 16:29:38 +08:00
Yilin Jing 28221b4121 Reduce skills.json cache to 60 seconds 2026-01-19 16:22:33 +08:00
Yilin Jing 14b451b15a Disable user-level for Cursor (project-only) 2026-01-19 15:38:30 +08:00
Yilin Jing 71354b0269 Redesign hero section with tool and level selectors
- Remove '6 SKILLS' badge
- Add level selector (User-level / Project-level)
- Add tool selector (Claude / Droid / OpenCode / Codex / Cursor)
- Dynamic install command based on selections
- Project-level adds -p flag to install command
2026-01-19 15:35:02 +08:00
Yilin Jing 3f4a38b6aa Add opc.dev banner to README and website 2026-01-19 15:14:55 +08:00
Yilin Jing 7a078a8853 Add favicon from cropped SVG logo 2026-01-19 14:34:43 +08:00
Yilin Jing 2fb330ba9b Add logo-creator skill and update website logo
- 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
2026-01-18 09:51:39 +08:00
Yilin Jing e7fac5cf99 website match mobile 2026-01-17 20:13:45 +08:00
Yilin Jing 8712d2caca Improve mobile responsiveness for opc.dev 2026-01-17 18:17:37 +08:00
Yilin Jing c3d267ad4f Add domain-hunter example and display on website 2026-01-17 17:46:41 +08:00
Yilin Jing fb199e3f9c Add requesthunt skill for user demand research
- 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
2026-01-17 17:08:16 +08:00
Yilin Jing bcf88a1824 Fix fallback config structure and add API key detection
- 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
2026-01-17 16:34:57 +08:00