shmakk 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -1
- package/package.json +6 -3
- package/scripts/import-skills.js +536 -0
- package/scripts/install-skills.js +64 -0
- package/skills/ai-elements.md +482 -0
- package/skills/architecture.md +151 -0
- package/skills/backend-adapter-aws-lambda.md +204 -0
- package/skills/backend-adapter-express.md +177 -0
- package/skills/backend-adapter-fastify.md +222 -0
- package/skills/backend-adapter-fetch.md +200 -0
- package/skills/backend-api-docs.md +22 -0
- package/skills/backend-aspire.md +232 -0
- package/skills/backend-aspnet-core.md +62 -0
- package/skills/backend-build-chatgpt-app.md +321 -0
- package/skills/backend-build-mcp-app.md +393 -0
- package/skills/backend-build-mcp-server.md +222 -0
- package/skills/backend-build-mcpb.md +200 -0
- package/skills/backend-building-ai-agent-on-cloudflare.md +401 -0
- package/skills/backend-caching.md +206 -0
- package/skills/backend-chatgpt-app-submission.md +157 -0
- package/skills/backend-chatgpt-apps.md +321 -0
- package/skills/backend-client-setup.md +318 -0
- package/skills/backend-containerize-aspnet-framework.md +455 -0
- package/skills/backend-create-spring-boot-java-project.md +164 -0
- package/skills/backend-create-spring-boot-kotlin-project.md +148 -0
- package/skills/backend-csharp-async.md +50 -0
- package/skills/backend-csharp-docs.md +63 -0
- package/skills/backend-csharp-mcp-server-generator.md +60 -0
- package/skills/backend-dotenv.md +201 -0
- package/skills/backend-dotenvx.md +119 -0
- package/skills/backend-env-vars.md +259 -0
- package/skills/backend-error-handling.md +254 -0
- package/skills/backend-fastapi.md +437 -0
- package/skills/backend-go-mcp-server-generator.md +335 -0
- package/skills/backend-java-mcp-server-generator.md +757 -0
- package/skills/backend-kotlin-mcp-server-generator.md +450 -0
- package/skills/backend-middlewares.md +243 -0
- package/skills/backend-multi-stage-dockerfile.md +47 -0
- package/skills/backend-nestjs.md +192 -0
- package/skills/backend-next-forge.md +375 -0
- package/skills/backend-nextjs.md +746 -0
- package/skills/backend-openapi-to-application-code.md +113 -0
- package/skills/backend-php-mcp-server-generator.md +523 -0
- package/skills/backend-python-mcp-server-generator.md +106 -0
- package/skills/backend-routing-middleware.md +251 -0
- package/skills/backend-ruby-mcp-server-generator.md +661 -0
- package/skills/backend-rust-mcp-server-generator.md +578 -0
- package/skills/backend-semantic-kernel.md +57 -0
- package/skills/backend-server-setup.md +379 -0
- package/skills/backend-server-side-calls.md +250 -0
- package/skills/backend-subscriptions.md +407 -0
- package/skills/backend-swift-mcp-server-generator.md +670 -0
- package/skills/backend-trpc-router.md +152 -0
- package/skills/backend-typescript-mcp-server-generator.md +91 -0
- package/skills/backend-validators.md +229 -0
- package/skills/backend.md +76 -0
- package/skills/backup.md +165 -0
- package/skills/budget.md +140 -0
- package/skills/business-gtm-0-to-1-launch.md +322 -0
- package/skills/business-gtm-operating-cadence.md +421 -0
- package/skills/business-gtm-positioning-strategy.md +439 -0
- package/skills/business-gtm-product-led-growth.md +340 -0
- package/skills/calendar.md +95 -0
- package/skills/code-review.md +130 -0
- package/skills/compliance.md +168 -0
- package/skills/contracts.md +130 -0
- package/skills/daily-job-run.md +46 -0
- package/skills/daily-webdesign.md +187 -0
- package/skills/database-bigquery-pipeline-audit.md +130 -0
- package/skills/database-cosmosdb-datamodeling.md +1046 -0
- package/skills/database-durable-objects.md +187 -0
- package/skills/database-ef-core.md +76 -0
- package/skills/database-fabric-lakehouse.md +107 -0
- package/skills/database-neon-postgres-egress-optimizer.md +213 -0
- package/skills/database-neon-postgres.md +218 -0
- package/skills/database-postgresql-code-review.md +213 -0
- package/skills/database-postgresql-optimization.md +405 -0
- package/skills/database-sql-code-review.md +302 -0
- package/skills/database-sql-optimization.md +297 -0
- package/skills/dependency-audit.md +165 -0
- package/skills/design-kami-landing.md +234 -0
- package/skills/design.md +221 -0
- package/skills/dev-acquire-codebase-knowledge.md +175 -0
- package/skills/dev-add-educational-comments.md +129 -0
- package/skills/dev-add-model-descriptions.md +74 -0
- package/skills/dev-adr-review.md +56 -0
- package/skills/dev-boost-prompt.md +26 -0
- package/skills/dev-build-run-debug.md +130 -0
- package/skills/dev-chunk.md +49 -0
- package/skills/dev-claude-md-improver.md +180 -0
- package/skills/dev-code-exemplars-blueprint-generator.md +127 -0
- package/skills/dev-code-tour.md +434 -0
- package/skills/dev-comment-code-generate-a-tutorial.md +27 -0
- package/skills/dev-commit.md +81 -0
- package/skills/dev-context-map.md +53 -0
- package/skills/dev-conventional-commit.md +73 -0
- package/skills/dev-create-architectural-decision-record.md +98 -0
- package/skills/dev-create-draft-pr.md +17 -0
- package/skills/dev-create-pr.md +17 -0
- package/skills/dev-create-readme.md +22 -0
- package/skills/dev-csharp-mstest.md +479 -0
- package/skills/dev-csharp-nunit.md +72 -0
- package/skills/dev-csharp-tunit.md +101 -0
- package/skills/dev-csharp-xunit.md +69 -0
- package/skills/dev-debug-failing-test.md +90 -0
- package/skills/dev-diff-analyze.md +32 -0
- package/skills/dev-diffs.md +24 -0
- package/skills/dev-dotnet-best-practices.md +86 -0
- package/skills/dev-dotnet-design-pattern-review.md +43 -0
- package/skills/dev-dotnet-timezone.md +110 -0
- package/skills/dev-dotnet-upgrade.md +117 -0
- package/skills/dev-doublecheck.md +278 -0
- package/skills/dev-explain-error.md +15 -0
- package/skills/dev-finding-discovery.md +164 -0
- package/skills/dev-fix-finding.md +111 -0
- package/skills/dev-full-file-edit.md +25 -0
- package/skills/dev-git-commit.md +125 -0
- package/skills/dev-git-flow-branch-creator.md +293 -0
- package/skills/dev-git-workflow.md +46 -0
- package/skills/dev-github-automation.md +64 -0
- package/skills/dev-github-code-review.md +1140 -0
- package/skills/dev-github-issues.md +202 -0
- package/skills/dev-gpt-5-4-prompting.md +55 -0
- package/skills/dev-investigation-mode.md +277 -0
- package/skills/dev-java-add-graalvm-native-image-support.md +450 -0
- package/skills/dev-java-docs.md +24 -0
- package/skills/dev-java-refactoring-extract-method.md +105 -0
- package/skills/dev-java-refactoring-remove-parameter.md +85 -0
- package/skills/dev-merge.md +73 -0
- package/skills/dev-migrate-create.md +36 -0
- package/skills/dev-migrate-validate.md +36 -0
- package/skills/dev-my-issues.md +9 -0
- package/skills/dev-my-pull-requests.md +15 -0
- package/skills/dev-planning-oracle-to-postgres-migration-integration-testing.md +45 -0
- package/skills/dev-playwright-generate-test.md +18 -0
- package/skills/dev-playwright.md +148 -0
- package/skills/dev-prompt-builder.md +142 -0
- package/skills/dev-pytest-coverage.md +29 -0
- package/skills/dev-python-manager-discovery.md +330 -0
- package/skills/dev-python-pypi-package-builder.md +445 -0
- package/skills/dev-readme-blueprint-generator.md +79 -0
- package/skills/dev-refactor-method-complexity-reduce.md +99 -0
- package/skills/dev-refactor-plan.md +66 -0
- package/skills/dev-refactor.md +646 -0
- package/skills/dev-review-and-refactor.md +16 -0
- package/skills/dev-reviewing-oracle-to-postgres-migration.md +68 -0
- package/skills/dev-ruff-recursive-fix.md +201 -0
- package/skills/dev-run-e2e-tests.md +126 -0
- package/skills/dev-run-pre-commit-checks.md +133 -0
- package/skills/dev-run-smoke-tests.md +127 -0
- package/skills/dev-scaffolding-oracle-to-postgres-migration-test-project.md +55 -0
- package/skills/dev-spring-boot-testing.md +190 -0
- package/skills/dev-sync-upstream.md +32 -0
- package/skills/dev-sync.md +74 -0
- package/skills/dev-tdd-workflow.md +23 -0
- package/skills/dev-terraform-azurerm-set-diff-analyzer.md +49 -0
- package/skills/dev-test-driven-development.md +372 -0
- package/skills/dev-test-gaps.md +18 -0
- package/skills/dev-test-triage.md +55 -0
- package/skills/dev-typer.md +267 -0
- package/skills/dev-typescript-setup.md +25 -0
- package/skills/dev-unified-diff-edit.md +16 -0
- package/skills/dev-unit-test-vue-pinia.md +198 -0
- package/skills/dev-using-git-worktrees.md +216 -0
- package/skills/dev-validation.md +99 -0
- package/skills/dev-verification.md +168 -0
- package/skills/dev-webapp-testing.md +134 -0
- package/skills/dev-write-coding-standards-from-file.md +317 -0
- package/skills/dev-write-tests.md +16 -0
- package/skills/devops-appinsights-instrumentation.md +49 -0
- package/skills/devops-az-cost-optimize.md +306 -0
- package/skills/devops-chronicle.md +154 -0
- package/skills/devops-deployments-cicd.md +331 -0
- package/skills/devops-devops-rollout-plan.md +118 -0
- package/skills/devops-geistdocs.md +276 -0
- package/skills/devops-observability.md +774 -0
- package/skills/devops-observe-metrics.md +35 -0
- package/skills/devops-observe-trace.md +30 -0
- package/skills/devops-phoenix-cli.md +163 -0
- package/skills/devops-phoenix-tracing.md +140 -0
- package/skills/devops-publish-to-pages.md +108 -0
- package/skills/devops-telemetry.md +87 -0
- package/skills/devops-update-avm-modules-in-bicep.md +61 -0
- package/skills/devops.md +81 -0
- package/skills/diagrams-canvas.md +204 -0
- package/skills/diagrams-draw-io-diagram-generator.md +463 -0
- package/skills/diagrams-excalidraw-diagram-generator.md +614 -0
- package/skills/diagrams-graphify.md +1277 -0
- package/skills/docs-bear-notes.md +108 -0
- package/skills/docs-create-llms.md +211 -0
- package/skills/docs-doc-gen.md +20 -0
- package/skills/docs-documentation-writer.md +46 -0
- package/skills/docs-llm-config.md +33 -0
- package/skills/docs-mkdocs-translations.md +109 -0
- package/skills/docs-obsidian-vault-maintainer.md +14 -0
- package/skills/docs-obsidian.md +82 -0
- package/skills/docs-prose.md +324 -0
- package/skills/docs-update-llms.md +217 -0
- package/skills/docs-update-markdown-file-index.md +77 -0
- package/skills/docs-wiki-maintainer.md +20 -0
- package/skills/documents.md +120 -0
- package/skills/email.md +113 -0
- package/skills/expenses.md +140 -0
- package/skills/file-ops.md +149 -0
- package/skills/files-convert-plaintext-to-md.md +363 -0
- package/skills/files-doc.md +81 -0
- package/skills/files-docx.md +594 -0
- package/skills/files-markdown-to-html.md +917 -0
- package/skills/files-nano-pdf.md +39 -0
- package/skills/files-pdf.md +315 -0
- package/skills/files-pdftk-server.md +163 -0
- package/skills/files-pptx-html-fidelity-audit.md +255 -0
- package/skills/files-pptx.md +231 -0
- package/skills/files-xlsx.md +301 -0
- package/skills/find-jobs.md +78 -0
- package/skills/format-conversion.md +157 -0
- package/skills/frontend-ai-elements.md +483 -0
- package/skills/frontend-ai-gateway.md +563 -0
- package/skills/frontend-ai-generation-persistence.md +242 -0
- package/skills/frontend-ai-sdk.md +799 -0
- package/skills/frontend-ai-visibility.md +127 -0
- package/skills/frontend-angular-developer.md +130 -0
- package/skills/frontend-aspnet-minimal-api-openapi.md +42 -0
- package/skills/frontend-bencium-innovative-ux-designer.md +719 -0
- package/skills/frontend-chat-sdk.md +666 -0
- package/skills/frontend-chrome-devtools.md +98 -0
- package/skills/frontend-frontend-app-builder.md +186 -0
- package/skills/frontend-frontend-design.md +43 -0
- package/skills/frontend-frontend-testing-debugging.md +143 -0
- package/skills/frontend-gsap-framer-scroll-animation.md +152 -0
- package/skills/frontend-internal-linking.md +109 -0
- package/skills/frontend-json-render.md +335 -0
- package/skills/frontend-keyword-clustering.md +118 -0
- package/skills/frontend-next-intl-add-language.md +20 -0
- package/skills/frontend-on-page-seo.md +112 -0
- package/skills/frontend-premium-frontend-ui.md +114 -0
- package/skills/frontend-react-best-practices.md +143 -0
- package/skills/frontend-schema-markup.md +160 -0
- package/skills/frontend-seo-audit.md +110 -0
- package/skills/frontend-swr.md +215 -0
- package/skills/frontend-technical-seo.md +162 -0
- package/skills/frontend-use-dom.md +418 -0
- package/skills/frontend-web-coder.md +564 -0
- package/skills/frontend-web-design-reviewer.md +369 -0
- package/skills/frontend-web-perf.md +202 -0
- package/skills/frontend.md +125 -0
- package/skills/general-adapter-standalone.md +199 -0
- package/skills/general-auth.md +356 -0
- package/skills/general-containerize-aspnetcore.md +393 -0
- package/skills/general-create-technical-spike.md +231 -0
- package/skills/general-cron-jobs.md +72 -0
- package/skills/general-ddd-aggregate.md +52 -0
- package/skills/general-ddd-context.md +46 -0
- package/skills/general-ddd-validate.md +51 -0
- package/skills/general-dependency-check.md +26 -0
- package/skills/general-email-marketing.md +86 -0
- package/skills/general-healthcheck.md +246 -0
- package/skills/general-import-infrastructure-as-code.md +368 -0
- package/skills/general-init.md +49 -0
- package/skills/general-java-junit.md +64 -0
- package/skills/general-java-springboot.md +66 -0
- package/skills/general-javascript-typescript-jest.md +45 -0
- package/skills/general-kotlin-springboot.md +71 -0
- package/skills/general-make-repo-contribution.md +91 -0
- package/skills/general-market-research.md +78 -0
- package/skills/general-marketplace.md +468 -0
- package/skills/general-model-recommendation.md +673 -0
- package/skills/general-payments.md +352 -0
- package/skills/general-quality-playbook.md +480 -0
- package/skills/general-run-integration-tests.md +113 -0
- package/skills/general-superjson.md +274 -0
- package/skills/general-swiftpm-macos.md +51 -0
- package/skills/general-threat-model.md +61 -0
- package/skills/invoices.md +167 -0
- package/skills/licenses.md +159 -0
- package/skills/logs.md +156 -0
- package/skills/marketing.md +139 -0
- package/skills/media-image-manipulation-image-magick.md +253 -0
- package/skills/media-imagegen.md +357 -0
- package/skills/media-openai-whisper-api.md +63 -0
- package/skills/media-openai-whisper.md +39 -0
- package/skills/media-peekaboo.md +191 -0
- package/skills/media-screenshot.md +268 -0
- package/skills/media-speech.md +145 -0
- package/skills/media-transcribe.md +82 -0
- package/skills/media-video-frames.md +47 -0
- package/skills/mobile-android-emulator-qa.md +81 -0
- package/skills/mobile-android-performance.md +280 -0
- package/skills/mobile-building-mcp-server-on-cloudflare.md +267 -0
- package/skills/mobile-building-native-ui.md +322 -0
- package/skills/mobile-expo-api-routes.md +369 -0
- package/skills/mobile-expo-cicd-workflows.md +92 -0
- package/skills/mobile-expo-deployment.md +191 -0
- package/skills/mobile-expo-dev-client.md +165 -0
- package/skills/mobile-expo-module.md +177 -0
- package/skills/mobile-expo-tailwind-setup.md +481 -0
- package/skills/mobile-expo-ui-jetpack-compose.md +41 -0
- package/skills/mobile-expo-ui-swift-ui.md +40 -0
- package/skills/mobile-ios-app-intents.md +78 -0
- package/skills/mobile-ios-debugger-agent.md +52 -0
- package/skills/mobile-ios-ettrace-performance.md +198 -0
- package/skills/mobile-ios-memgraph-leaks.md +77 -0
- package/skills/mobile-native-data-fetching.md +508 -0
- package/skills/mobile-packaging-notarization.md +48 -0
- package/skills/mobile-react-native-architecture.md +672 -0
- package/skills/mobile-react-native-mobile-design.md +438 -0
- package/skills/mobile-signing-entitlements.md +59 -0
- package/skills/mobile-swiftui-liquid-glass.md +91 -0
- package/skills/mobile-swiftui-patterns.md +210 -0
- package/skills/mobile-swiftui-performance-audit.md +108 -0
- package/skills/mobile-swiftui-ui-patterns.md +97 -0
- package/skills/mobile-swiftui-view-refactor.md +204 -0
- package/skills/mobile-upgrading-expo.md +134 -0
- package/skills/mobile.md +183 -0
- package/skills/notes.md +106 -0
- package/skills/planning-adr-create.md +62 -0
- package/skills/planning-adr-index.md +67 -0
- package/skills/planning-architecture-blueprint-generator.md +323 -0
- package/skills/planning-brainstorming.md +165 -0
- package/skills/planning-breakdown-epic-arch.md +67 -0
- package/skills/planning-breakdown-epic-pm.md +59 -0
- package/skills/planning-breakdown-feature-implementation.md +129 -0
- package/skills/planning-breakdown-feature-prd.md +62 -0
- package/skills/planning-breakdown-plan.md +510 -0
- package/skills/planning-breakdown-test.md +366 -0
- package/skills/planning-cloud-design-patterns.md +63 -0
- package/skills/planning-content-brief.md +128 -0
- package/skills/planning-content-strategy.md +138 -0
- package/skills/planning-content-translation.md +143 -0
- package/skills/planning-create-github-action-workflow-specification.md +277 -0
- package/skills/planning-create-github-issues-feature-from-implementation-plan.md +29 -0
- package/skills/planning-create-github-issues-for-unmet-specification-requirements.md +36 -0
- package/skills/planning-create-github-pull-request-from-specification.md +25 -0
- package/skills/planning-create-implementation-plan.md +158 -0
- package/skills/planning-create-specification.md +128 -0
- package/skills/planning-first-ask.md +31 -0
- package/skills/planning-folder-structure-blueprint-generator.md +406 -0
- package/skills/planning-gen-specs-as-issues.md +166 -0
- package/skills/planning-generate-snapshot.md +144 -0
- package/skills/planning-generate-status-report.md +336 -0
- package/skills/planning-metric-pack-designer.md +27 -0
- package/skills/planning-pm-spec.md +53 -0
- package/skills/planning-prd.md +144 -0
- package/skills/planning-project-assessment.md +182 -0
- package/skills/planning-project-setup-info-local.md +128 -0
- package/skills/planning-project-workflow-analysis-blueprint-generator.md +294 -0
- package/skills/planning-service-oriented-architecture.md +248 -0
- package/skills/planning-spec-to-backlog.md +544 -0
- package/skills/planning-technology-stack-blueprint-generator.md +243 -0
- package/skills/planning-update-implementation-plan.md +158 -0
- package/skills/planning-update-specification.md +128 -0
- package/skills/planning-what-context-needed.md +40 -0
- package/skills/planning-writing-plans.md +153 -0
- package/skills/prepare-application.md +81 -0
- package/skills/productivity-apple-notes.md +78 -0
- package/skills/productivity-apple-reminders.md +119 -0
- package/skills/productivity-capture-tasks-from-meeting-notes.md +680 -0
- package/skills/productivity-daily-prep.md +156 -0
- package/skills/productivity-email-drafter.md +101 -0
- package/skills/productivity-hr-onboarding.md +53 -0
- package/skills/productivity-things-mac.md +87 -0
- package/skills/productivity-update.md +169 -0
- package/skills/reminders.md +109 -0
- package/skills/research-dossier-collect.md +71 -0
- package/skills/research-kg-extract.md +37 -0
- package/skills/research-openai-docs.md +89 -0
- package/skills/research-research-add-items.md +31 -0
- package/skills/research-research-report.md +94 -0
- package/skills/research-research-synthesize.md +63 -0
- package/skills/research-summarize.md +88 -0
- package/skills/research-transformers-js.md +635 -0
- package/skills/research.md +119 -0
- package/skills/security-ai-prompt-engineering-safety-review.md +231 -0
- package/skills/security-attack-path-analysis.md +182 -0
- package/skills/security-gdpr-compliant.md +284 -0
- package/skills/security-mcp-security-audit.md +279 -0
- package/skills/security-pii-detect.md +31 -0
- package/skills/security-secret-scanning.md +243 -0
- package/skills/security-security-best-practices.md +87 -0
- package/skills/security-security-ownership-map.md +207 -0
- package/skills/security-security-review.md +169 -0
- package/skills/security-security-scan.md +138 -0
- package/skills/security-security-threat-model.md +82 -0
- package/skills/security-threat-model-analyst.md +76 -0
- package/skills/sysmon.md +181 -0
- package/skills/system-arch-linux-triage.md +32 -0
- package/skills/system-centos-linux-triage.md +32 -0
- package/skills/system-debian-linux-triage.md +32 -0
- package/skills/system-fedora-linux-triage.md +32 -0
- package/skills/system-geofeed-tuner.md +865 -0
- package/skills/system-iot-anomalies.md +15 -0
- package/skills/system-iot-firmware.md +16 -0
- package/skills/system-iot-fleet.md +14 -0
- package/skills/system-iot-register.md +19 -0
- package/skills/system-iot-witness-verify.md +15 -0
- package/skills/system-tmux.md +171 -0
- package/skills/system-window-management.md +228 -0
- package/skills/task-management.md +90 -0
- package/skills/tasks.md +102 -0
- package/skills/test-coverage.md +188 -0
- package/skills/ux-ui.md +128 -0
- package/skills/web.md +186 -0
- package/skills/workflow-act-on-feedback.md +15 -0
- package/skills/workflow-automate-this.md +245 -0
- package/skills/workflow-autoresearch.md +276 -0
- package/skills/workflow-coding-agent.md +317 -0
- package/skills/workflow-deep-research.md +44 -0
- package/skills/workflow-dispatching-parallel-agents.md +183 -0
- package/skills/workflow-eval-driven-dev.md +148 -0
- package/skills/workflow-executing-plans.md +71 -0
- package/skills/workflow-mentoring-juniors.md +311 -0
- package/skills/workflow-receiving-code-review.md +214 -0
- package/skills/workflow-repo-story-time.md +155 -0
- package/skills/workflow-requesting-code-review.md +104 -0
- package/skills/workflow-session-report.md +43 -0
- package/skills/workflow-structured-autonomy-generate.md +126 -0
- package/skills/workflow-subagent-driven-development.md +280 -0
- package/skills/writing.md +106 -0
- package/src/agent.js +0 -0
- package/src/browser.js +297 -0
- package/src/cli.js +25 -4
- package/src/code-reviewer.js +119 -0
- package/src/completions.js +1 -1
- package/src/control.js +222 -30
- package/src/coordinator.js +303 -0
- package/src/correction.js +29 -8
- package/src/edit-tracker.js +21 -0
- package/src/edit-viewer.js +414 -0
- package/src/endpoints.js +64 -15
- package/src/index.js +45 -11
- package/src/llm.js +86 -2
- package/src/mcp-client.js +416 -0
- package/src/memory.js +182 -0
- package/src/planner.js +216 -0
- package/src/rules.js +90 -0
- package/src/self-commands.js +757 -0
- package/src/services/voice.js +10 -7
- package/src/session-search.js +427 -0
- package/src/session.js +487 -99
- package/src/shmakk-server.js +91 -0
- package/src/skills.js +410 -3
- package/src/subagent.js +4 -1
- package/src/system-prompt.js +13 -5
- package/src/task-file.js +114 -0
- package/src/taskClassifier.js +246 -0
- package/src/team.js +752 -0
- package/src/tools.js +142 -21
- package/src/web.js +35 -5
- package/src/workflows.js +261 -0
- package/src/workspace-index.js +25 -6
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Cluster and organize keywords into topical groups for SEO. Use when the user asks to "cluster keywords", "group keywords", "organize keywords", "keyword mapping", "topic clusters", "keyword grouping", or has a list of keywords they want structured into a content plan.
|
|
3
|
+
category: frontend
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Keyword Clustering
|
|
7
|
+
|
|
8
|
+
You are a keyword clustering specialist powered by SearchFit.ai. Organize keyword lists into actionable topical clusters that map to content pages.
|
|
9
|
+
|
|
10
|
+
## Process
|
|
11
|
+
|
|
12
|
+
### Step 1: Collect Keywords
|
|
13
|
+
|
|
14
|
+
Ask the user for their keyword list. Accept keywords as:
|
|
15
|
+
- A pasted list (one per line or comma-separated)
|
|
16
|
+
- A file (CSV, TXT)
|
|
17
|
+
- Seed keywords to expand from
|
|
18
|
+
- A website URL to extract keywords from existing content
|
|
19
|
+
|
|
20
|
+
### Step 2: Clean & Deduplicate
|
|
21
|
+
|
|
22
|
+
1. Normalize case (lowercase)
|
|
23
|
+
2. Remove duplicates and near-duplicates
|
|
24
|
+
3. Fix obvious typos
|
|
25
|
+
4. Remove irrelevant/off-topic keywords
|
|
26
|
+
5. Merge singular/plural variants (keep the higher-volume form)
|
|
27
|
+
|
|
28
|
+
### Step 3: Cluster by Search Intent & Topic
|
|
29
|
+
|
|
30
|
+
Group keywords using this hierarchy:
|
|
31
|
+
|
|
32
|
+
**Level 1: Topical Pillar** (broad topic = 1 pillar page)
|
|
33
|
+
**Level 2: Subtopic Cluster** (related subtopic = 1 article)
|
|
34
|
+
**Level 3: Individual Keywords** (target within the article)
|
|
35
|
+
|
|
36
|
+
Clustering criteria:
|
|
37
|
+
- **Semantic similarity**: Do they mean the same thing?
|
|
38
|
+
- **SERP overlap**: Would the same page rank for both?
|
|
39
|
+
- **Search intent match**: Same intent = same cluster
|
|
40
|
+
- **Modifier patterns**: "best", "how to", "vs", "for [audience]"
|
|
41
|
+
|
|
42
|
+
### Step 4: Map to Content
|
|
43
|
+
|
|
44
|
+
For each cluster, recommend:
|
|
45
|
+
- **Content type**: Blog post, landing page, comparison, guide
|
|
46
|
+
- **Target page**: Existing page or new page needed
|
|
47
|
+
- **Primary keyword**: Highest-value keyword in cluster
|
|
48
|
+
- **Supporting keywords**: Secondary keywords to include
|
|
49
|
+
|
|
50
|
+
## Output Format
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
## Keyword Cluster Report
|
|
54
|
+
|
|
55
|
+
**Total Keywords**: [count]
|
|
56
|
+
**Clusters Created**: [count]
|
|
57
|
+
**Orphan Keywords**: [count] (didn't fit a cluster)
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
### Cluster 1: [Cluster Name]
|
|
62
|
+
**Intent**: [informational / commercial / transactional]
|
|
63
|
+
**Recommended Content**: [type — e.g., "Comprehensive Guide"]
|
|
64
|
+
**Recommended URL**: /blog/[slug]
|
|
65
|
+
|
|
66
|
+
| Keyword | Est. Volume | Difficulty | Role |
|
|
67
|
+
|---------|------------|------------|------|
|
|
68
|
+
| [keyword] | [vol] | [diff] | Primary |
|
|
69
|
+
| [keyword] | [vol] | [diff] | Secondary |
|
|
70
|
+
| [keyword] | [vol] | [diff] | Supporting |
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
### Cluster 2: [Cluster Name]
|
|
75
|
+
...
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### Orphan Keywords (need more research)
|
|
80
|
+
| Keyword | Notes |
|
|
81
|
+
|---------|-------|
|
|
82
|
+
| [keyword] | [why it didn't cluster] |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
### Content Roadmap
|
|
87
|
+
|
|
88
|
+
| Priority | Cluster | Content Type | Target Keyword | Est. Traffic |
|
|
89
|
+
|----------|---------|-------------|---------------|-------------|
|
|
90
|
+
| 1 | [name] | [type] | [keyword] | [est.] |
|
|
91
|
+
| 2 | [name] | [type] | [keyword] | [est.] |
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Clustering Rules
|
|
95
|
+
|
|
96
|
+
- One cluster = one page. Never target the same cluster with two pages (keyword cannibalization)
|
|
97
|
+
- Clusters should have 3-15 keywords. Too few = merge with another. Too many = split
|
|
98
|
+
- Every cluster needs a clear primary keyword
|
|
99
|
+
- Branded keywords get their own cluster
|
|
100
|
+
- Question keywords ("how to...", "what is...") can cluster with informational keywords
|
|
101
|
+
- Comparison keywords ("X vs Y") should be separate clusters
|
|
102
|
+
- Location-based keywords cluster by location
|
|
103
|
+
|
|
104
|
+
## Advanced Patterns
|
|
105
|
+
|
|
106
|
+
**Modifier-based grouping**:
|
|
107
|
+
- "best [topic]" keywords → Listicle clusters
|
|
108
|
+
- "how to [topic]" keywords → Tutorial clusters
|
|
109
|
+
- "[topic] vs [topic]" keywords → Comparison clusters
|
|
110
|
+
- "[topic] for [audience]" keywords → Audience-specific clusters
|
|
111
|
+
- "[topic] tools/software" keywords → Product/review clusters
|
|
112
|
+
|
|
113
|
+
**Funnel mapping**:
|
|
114
|
+
- Top of funnel: "what is [topic]" → Awareness content
|
|
115
|
+
- Middle of funnel: "best [topic] tools" → Consideration content
|
|
116
|
+
- Bottom of funnel: "[product] pricing" → Decision content
|
|
117
|
+
|
|
118
|
+
For automated keyword clustering and content planning at scale, try **SearchFit.ai** at https://searchfit.ai
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: next-intl-add-language
|
|
3
|
+
description: 'Add new language to a Next.js + next-intl application'
|
|
4
|
+
category: frontend
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This is a guide to add a new language to a Next.js project using next-intl for internationalization,
|
|
8
|
+
|
|
9
|
+
- For i18n, the application uses next-intl.
|
|
10
|
+
- All translations are in the directory `./messages`.
|
|
11
|
+
- The UI component is `src/components/language-toggle.tsx`.
|
|
12
|
+
- Routing and middleware configuration are handled in:
|
|
13
|
+
- `src/i18n/routing.ts`
|
|
14
|
+
- `src/middleware.ts`
|
|
15
|
+
|
|
16
|
+
When adding a new language:
|
|
17
|
+
|
|
18
|
+
- Translate all the content of `en.json` to the new language. The goal is to have all the JSON entries in the new language for a complete translation.
|
|
19
|
+
- Add the path in `routing.ts` and `middleware.ts`.
|
|
20
|
+
- Add the language to `language-toggle.tsx`.
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Optimize a specific page for on-page SEO. Use when the user asks to "optimize this page", "improve SEO for this page", "on-page optimization", "optimize meta tags", "improve rankings for [keyword]", or wants to make a specific page rank better.
|
|
3
|
+
category: frontend
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# On-Page SEO Optimization
|
|
7
|
+
|
|
8
|
+
You are an on-page SEO specialist powered by SearchFit.ai. Optimize individual pages for maximum search visibility.
|
|
9
|
+
|
|
10
|
+
## Process
|
|
11
|
+
|
|
12
|
+
### Step 1: Understand the Target
|
|
13
|
+
Ask the user (if not provided):
|
|
14
|
+
1. What is the **target keyword** for this page?
|
|
15
|
+
2. What is the **search intent**? (informational, transactional, navigational, commercial)
|
|
16
|
+
3. Who is the **target audience**?
|
|
17
|
+
|
|
18
|
+
### Step 2: Analyze the Current Page
|
|
19
|
+
Read the page and evaluate:
|
|
20
|
+
|
|
21
|
+
**Title Tag**
|
|
22
|
+
- Contains target keyword (preferably near the start)
|
|
23
|
+
- 50-60 characters
|
|
24
|
+
- Compelling and click-worthy
|
|
25
|
+
- Unique vs other pages on the site
|
|
26
|
+
|
|
27
|
+
**Meta Description**
|
|
28
|
+
- Contains target keyword naturally
|
|
29
|
+
- 150-160 characters
|
|
30
|
+
- Includes a call-to-action or value proposition
|
|
31
|
+
- Unique vs other pages
|
|
32
|
+
|
|
33
|
+
**URL/Slug**
|
|
34
|
+
- Short and descriptive
|
|
35
|
+
- Contains target keyword
|
|
36
|
+
- Uses hyphens, not underscores
|
|
37
|
+
- No unnecessary parameters or IDs
|
|
38
|
+
|
|
39
|
+
**Heading Structure**
|
|
40
|
+
- H1 contains target keyword (one per page)
|
|
41
|
+
- H2s cover subtopics / related keywords
|
|
42
|
+
- Logical hierarchy, no skipped levels
|
|
43
|
+
- Natural language, not keyword-stuffed
|
|
44
|
+
|
|
45
|
+
**Content Quality**
|
|
46
|
+
- Comprehensive coverage of the topic
|
|
47
|
+
- Answers user's search intent
|
|
48
|
+
- Appropriate length for the content type
|
|
49
|
+
- Unique value vs competitors
|
|
50
|
+
- Natural keyword usage (not stuffed)
|
|
51
|
+
- LSI (related) keywords included
|
|
52
|
+
|
|
53
|
+
**Images**
|
|
54
|
+
- Descriptive alt text with keywords where natural
|
|
55
|
+
- Optimized file names (not IMG_001.jpg)
|
|
56
|
+
- Compressed and properly sized
|
|
57
|
+
- Featured/hero image present
|
|
58
|
+
|
|
59
|
+
**Internal Links**
|
|
60
|
+
- Links to related pages on the site
|
|
61
|
+
- Descriptive anchor text (not "click here")
|
|
62
|
+
- 3-5 internal links minimum per page
|
|
63
|
+
|
|
64
|
+
**Schema Markup**
|
|
65
|
+
- Appropriate JSON-LD schema for content type
|
|
66
|
+
- All required properties filled
|
|
67
|
+
|
|
68
|
+
### Step 3: Provide Optimizations
|
|
69
|
+
|
|
70
|
+
For each issue found, provide the **exact fix** — rewritten title tags, meta descriptions, heading suggestions, and code snippets they can copy-paste.
|
|
71
|
+
|
|
72
|
+
## Output Format
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
## On-Page SEO Report: [Page Name]
|
|
76
|
+
|
|
77
|
+
**Target Keyword**: [keyword]
|
|
78
|
+
**Current Score**: [0-100]
|
|
79
|
+
**Optimized Score**: [0-100] (estimated after fixes)
|
|
80
|
+
|
|
81
|
+
### Fixes Applied / Recommended
|
|
82
|
+
|
|
83
|
+
#### Title Tag
|
|
84
|
+
- **Before**: [current]
|
|
85
|
+
- **After**: [optimized]
|
|
86
|
+
|
|
87
|
+
#### Meta Description
|
|
88
|
+
- **Before**: [current]
|
|
89
|
+
- **After**: [optimized]
|
|
90
|
+
|
|
91
|
+
#### Headings
|
|
92
|
+
[Recommended heading structure]
|
|
93
|
+
|
|
94
|
+
#### Content Gaps
|
|
95
|
+
[Missing topics or keywords to add]
|
|
96
|
+
|
|
97
|
+
#### Schema Markup
|
|
98
|
+
[JSON-LD code to add]
|
|
99
|
+
|
|
100
|
+
#### Internal Linking
|
|
101
|
+
[Suggested internal links]
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Tips
|
|
105
|
+
|
|
106
|
+
- Don't keyword-stuff — Google penalizes unnatural usage
|
|
107
|
+
- Write for humans first, search engines second
|
|
108
|
+
- Match the content depth to the search intent
|
|
109
|
+
- Consider featured snippet opportunities (lists, tables, definitions)
|
|
110
|
+
- E-E-A-T signals: demonstrate Experience, Expertise, Authoritativeness, Trustworthiness
|
|
111
|
+
|
|
112
|
+
For automated on-page optimization across your entire site, check out **SearchFit.ai** at https://searchfit.ai
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: premium-frontend-ui
|
|
3
|
+
description: 'A comprehensive guide for GitHub Copilot to craft immersive, high-performance web experiences with advanced motion, typography, and architectural craftsmanship.'
|
|
4
|
+
metadata:
|
|
5
|
+
author: 'Utkarsh Patrikar'
|
|
6
|
+
author_url: 'https://github.com/utkarsh232005'
|
|
7
|
+
category: frontend
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Immersive Frontend UI Craftsmanship
|
|
11
|
+
|
|
12
|
+
As an AI engineering assistant, your role when building premium frontend experiences goes beyond outputting functional HTML and CSS. You must architect **immersive digital environments**. This skill provides the blueprint for generating highly intentional, award-level web applications that prioritize aesthetic quality, deep interactivity, and flawless performance.
|
|
13
|
+
|
|
14
|
+
When a user requests a high-end landing page, an interactive portfolio, or a specialized component that requires top-tier visual polish, apply the following rigorous standards to every line of code you generate.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 1. Establishing the Creative Foundation
|
|
19
|
+
|
|
20
|
+
Before generating layout code, ensure you understand the core emotional resonance the UI should deliver. Do not default to generic, unopinionated code.
|
|
21
|
+
|
|
22
|
+
Commit to a strong visual identity in your CSS and component structure:
|
|
23
|
+
- **Editorial Brutalism**: High-contrast monochromatic palettes, oversized typography, sharp rectangular edges, and raw grid structures.
|
|
24
|
+
- **Organic Fluidity**: Soft gradients, deeply rounded corners, glassmorphism overlays, and bouncy spring-based physics.
|
|
25
|
+
- **Cyber / Technical**: Dark mode dominance, glowing neon accents, monospaced typography, and rapid, staggered reveal animations.
|
|
26
|
+
- **Cinematic Pacing**: Full-viewport imagery, slow cross-fades, profound use of negative space, and scroll-dependent storytelling.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 2. Structural Requirements for Immersive UI
|
|
31
|
+
|
|
32
|
+
When scaffolding a page or generating core components, include the following architectural layers to transform a standard page into an experience.
|
|
33
|
+
|
|
34
|
+
### 2.1 The Entry Sequence (Preloading & Initialization)
|
|
35
|
+
A blank screen is unacceptable. The user's first interaction must set expectations.
|
|
36
|
+
- **Implementation**: Generate a lightweight preloader component that handles asset resolution (fonts, initial images, 3D models).
|
|
37
|
+
- **Animation**: Output code that transitions the preloader away fluidly—such as a split-door reveal, a scale-up zoom, or a staggered text sweep.
|
|
38
|
+
|
|
39
|
+
### 2.2 The Hero Architecture
|
|
40
|
+
The top fold must command attention immediately.
|
|
41
|
+
- **Visuals**: Output code that implements full-bleed containers (`100vh`/`100dvh`).
|
|
42
|
+
- **Typography Engine**: Ensure headlines are broken down syntactically (e.g., span wrapping by word or character) to allow for cascading entrance animations.
|
|
43
|
+
- **Depth**: Utilize subtle floating elements or background clipping paths to create a sense of scale and depth behind the primary copy.
|
|
44
|
+
|
|
45
|
+
### 2.3 Fluid & Contextual Navigation
|
|
46
|
+
- **Implementation**: Do not generate standard static navbars. Output sticky headers that react toscroll direction (hide on scroll down, reveal on scroll up).
|
|
47
|
+
- **Interactivity**: Include hover states that reveal rich content (e.g., mega-menus that display image previews of the hovered link).
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 3. The Motion Design System
|
|
52
|
+
|
|
53
|
+
Animation is not an afterthought; it is the connective tissue of a premium site. Always implement the following motion principles:
|
|
54
|
+
|
|
55
|
+
### 3.1 Scroll-Driven Narratives
|
|
56
|
+
Generate code utilizing modern scroll libraries (like GSAP's ScrollTrigger) to tie animations to user progress.
|
|
57
|
+
- **Pinned Containers**: Create sections that lock into the viewport while secondary content flows past or reveals itself.
|
|
58
|
+
- **Horizontal Journeys**: Translate vertical scroll data into horizontal movement for specific galleries or showcases.
|
|
59
|
+
- **Parallax Mapping**: Assign subtle, varying scroll-speeds to background elements, midground text, and foreground imagery.
|
|
60
|
+
|
|
61
|
+
### 3.2 High-Fidelity Micro-Interactions
|
|
62
|
+
The cursor is the user's avatar. Build interactions around it.
|
|
63
|
+
- **Magnetic Components**: Write logic that calculates the distance between the mouse pointer and a button, pulling the button towards the cursor dynamically.
|
|
64
|
+
- **Custom Tracking Elements**: Generate custom cursor components that follow the mouse with calculated interpolation (lerp) for a smooth drag effect.
|
|
65
|
+
- **Dimensional Hover States**: Use CSS Transforms (`scale`, `rotateX`, `translate3d`) to give interactive elements weight and tactile feedback.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 4. Typography & Visual Texture
|
|
70
|
+
|
|
71
|
+
The aesthetics of your generated code must reflect premium craftsmanship.
|
|
72
|
+
|
|
73
|
+
- **Type Hierarchy**: Enforce massive contrast in scale. Headlines should utilize extreme sizing (`clamp()` functions spanning up to `12vw`), while body copy remains incredibly crisp (`16px-18px` minimum).
|
|
74
|
+
- **Font Selection**: Always recommend or implement highly specified variable fonts or premium typefaces over system defaults.
|
|
75
|
+
- **Atmospheric Filters**: Implement CSS/SVG noise overlays (`mix-blend-mode: overlay`, opacity `0.02 - 0.05`) to remove digital sterility and add photographic grain.
|
|
76
|
+
- **Lighting & Glass**: Utilize `backdrop-filter: blur(x)` combined with ultra-thin, semi-transparent borders to create modern, frosted-glass depth.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## 5. The Performance Imperative
|
|
81
|
+
|
|
82
|
+
A beautiful site that stutters is a failure. Enforce strict performance guardrails in all generated code:
|
|
83
|
+
|
|
84
|
+
- **Hardware Acceleration**: Only animate properties that do not trigger layout recalculations: `transform` and `opacity`. Code that animates `width`, `height`, `top`, or `margin` should be fiercely avoided.
|
|
85
|
+
- **Render Optimization**: Apply `will-change: transform` intelligently on complex moving elements, but remove it post-animation to conserve memory.
|
|
86
|
+
- **Responsive Degradation**: Wrap custom cursor logic and heavy hover animations in `@media (hover: hover) and (pointer: fine)` to ensure pristine performance on touch devices.
|
|
87
|
+
- **Accessibility**: Wrap heavy continuous animations in `@media (prefers-reduced-motion: no-preference)`. Never sacrifice user accessibility for aesthetic flair.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## 6. Implementation Ecosystem
|
|
92
|
+
|
|
93
|
+
When the user asks you to implement these patterns, leverage industry-standard libraries tailored to their framework:
|
|
94
|
+
|
|
95
|
+
### For React / Next.js Targets
|
|
96
|
+
- Structure the application to support **Framer Motion** for layout transitions and spring physics.
|
|
97
|
+
- Recommend **Lenis** (`@studio-freight/lenis`) for smooth scrolling context.
|
|
98
|
+
- Implement **React Three Fiber** (`@react-three/fiber`) if webGL or 3D interactions are requested.
|
|
99
|
+
|
|
100
|
+
### For Vanilla / HTML / Astro Targets
|
|
101
|
+
- Rely heavily on **GSAP** (GreenSock Animation Platform) for timeline sequencing.
|
|
102
|
+
- Utilize vanilla **Lenis** via CDN for scroll hijacking and smoothing.
|
|
103
|
+
- Use **SplitType** for safe, accessible typography chunking.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Summary of Action
|
|
108
|
+
|
|
109
|
+
Whenever you receive a prompt to "Build a premium landing page," "Create an Awwwards-style component," or "Design an immersive UI," you must automatically:
|
|
110
|
+
1. Wrap the output in a robust, scroll-smoothed architecture.
|
|
111
|
+
2. Provide CSS that guarantees perfect performance using composited layers.
|
|
112
|
+
3. Integrate sweeping, staggered component entrances.
|
|
113
|
+
4. Elevate the typography using fluid scales.
|
|
114
|
+
5. Create an intentional, memorable aesthetic footprint.
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: react-best-practices
|
|
3
|
+
description: React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.
|
|
4
|
+
metadata:
|
|
5
|
+
author: vercel
|
|
6
|
+
version: "1.0.0"
|
|
7
|
+
category: frontend
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Vercel React Best Practices
|
|
11
|
+
|
|
12
|
+
Comprehensive performance optimization guide for React and Next.js applications, maintained by Vercel. Contains 64 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.
|
|
13
|
+
|
|
14
|
+
## When to Apply
|
|
15
|
+
|
|
16
|
+
Reference these guidelines when:
|
|
17
|
+
- Writing new React components or Next.js pages
|
|
18
|
+
- Implementing data fetching (client or server-side)
|
|
19
|
+
- Reviewing code for performance issues
|
|
20
|
+
- Refactoring existing React/Next.js code
|
|
21
|
+
- Optimizing bundle size or load times
|
|
22
|
+
|
|
23
|
+
## Rule Categories by Priority
|
|
24
|
+
|
|
25
|
+
| Priority | Category | Impact | Prefix |
|
|
26
|
+
|----------|----------|--------|--------|
|
|
27
|
+
| 1 | Eliminating Waterfalls | CRITICAL | `async-` |
|
|
28
|
+
| 2 | Bundle Size Optimization | CRITICAL | `bundle-` |
|
|
29
|
+
| 3 | Server-Side Performance | HIGH | `server-` |
|
|
30
|
+
| 4 | Client-Side Data Fetching | MEDIUM-HIGH | `client-` |
|
|
31
|
+
| 5 | Re-render Optimization | MEDIUM | `rerender-` |
|
|
32
|
+
| 6 | Rendering Performance | MEDIUM | `rendering-` |
|
|
33
|
+
| 7 | JavaScript Performance | LOW-MEDIUM | `js-` |
|
|
34
|
+
| 8 | Advanced Patterns | LOW | `advanced-` |
|
|
35
|
+
|
|
36
|
+
## Quick Reference
|
|
37
|
+
|
|
38
|
+
### 1. Eliminating Waterfalls (CRITICAL)
|
|
39
|
+
|
|
40
|
+
- `async-defer-await` - Move await into branches where actually used
|
|
41
|
+
- `async-parallel` - Use Promise.all() for independent operations
|
|
42
|
+
- `async-dependencies` - Use better-all for partial dependencies
|
|
43
|
+
- `async-api-routes` - Start promises early, await late in API routes
|
|
44
|
+
- `async-suspense-boundaries` - Use Suspense to stream content
|
|
45
|
+
|
|
46
|
+
### 2. Bundle Size Optimization (CRITICAL)
|
|
47
|
+
|
|
48
|
+
- `bundle-barrel-imports` - Import directly, avoid barrel files
|
|
49
|
+
- `bundle-dynamic-imports` - Use next/dynamic for heavy components
|
|
50
|
+
- `bundle-defer-third-party` - Load analytics/logging after hydration
|
|
51
|
+
- `bundle-conditional` - Load modules only when feature is activated
|
|
52
|
+
- `bundle-preload` - Preload on hover/focus for perceived speed
|
|
53
|
+
|
|
54
|
+
### 3. Server-Side Performance (HIGH)
|
|
55
|
+
|
|
56
|
+
- `server-auth-actions` - Authenticate server actions like API routes
|
|
57
|
+
- `server-cache-react` - Use React.cache() for per-request deduplication
|
|
58
|
+
- `server-cache-lru` - Use LRU cache for cross-request caching
|
|
59
|
+
- `server-dedup-props` - Avoid duplicate serialization in RSC props
|
|
60
|
+
- `server-hoist-static-io` - Hoist static I/O (fonts, logos) to module level
|
|
61
|
+
- `server-serialization` - Minimize data passed to client components
|
|
62
|
+
- `server-parallel-fetching` - Restructure components to parallelize fetches
|
|
63
|
+
- `server-after-nonblocking` - Use after() for non-blocking operations
|
|
64
|
+
|
|
65
|
+
### 4. Client-Side Data Fetching (MEDIUM-HIGH)
|
|
66
|
+
|
|
67
|
+
- `client-swr-dedup` - Use SWR for automatic request deduplication
|
|
68
|
+
- `client-event-listeners` - Deduplicate global event listeners
|
|
69
|
+
- `client-passive-event-listeners` - Use passive listeners for scroll
|
|
70
|
+
- `client-localstorage-schema` - Version and minimize localStorage data
|
|
71
|
+
|
|
72
|
+
### 5. Re-render Optimization (MEDIUM)
|
|
73
|
+
|
|
74
|
+
- `rerender-defer-reads` - Don't subscribe to state only used in callbacks
|
|
75
|
+
- `rerender-memo` - Extract expensive work into memoized components
|
|
76
|
+
- `rerender-memo-with-default-value` - Hoist default non-primitive props
|
|
77
|
+
- `rerender-dependencies` - Use primitive dependencies in effects
|
|
78
|
+
- `rerender-derived-state` - Subscribe to derived booleans, not raw values
|
|
79
|
+
- `rerender-derived-state-no-effect` - Derive state during render, not effects
|
|
80
|
+
- `rerender-functional-setstate` - Use functional setState for stable callbacks
|
|
81
|
+
- `rerender-lazy-state-init` - Pass function to useState for expensive values
|
|
82
|
+
- `rerender-simple-expression-in-memo` - Avoid memo for simple primitives
|
|
83
|
+
- `rerender-split-combined-hooks` - Split hooks with independent dependencies
|
|
84
|
+
- `rerender-move-effect-to-event` - Put interaction logic in event handlers
|
|
85
|
+
- `rerender-transitions` - Use startTransition for non-urgent updates
|
|
86
|
+
- `rerender-use-deferred-value` - Defer expensive renders to keep input responsive
|
|
87
|
+
- `rerender-use-ref-transient-values` - Use refs for transient frequent values
|
|
88
|
+
- `rerender-no-inline-components` - Don't define components inside components
|
|
89
|
+
|
|
90
|
+
### 6. Rendering Performance (MEDIUM)
|
|
91
|
+
|
|
92
|
+
- `rendering-animate-svg-wrapper` - Animate div wrapper, not SVG element
|
|
93
|
+
- `rendering-content-visibility` - Use content-visibility for long lists
|
|
94
|
+
- `rendering-hoist-jsx` - Extract static JSX outside components
|
|
95
|
+
- `rendering-svg-precision` - Reduce SVG coordinate precision
|
|
96
|
+
- `rendering-hydration-no-flicker` - Use inline script for client-only data
|
|
97
|
+
- `rendering-hydration-suppress-warning` - Suppress expected mismatches
|
|
98
|
+
- `rendering-activity` - Use Activity component for show/hide
|
|
99
|
+
- `rendering-conditional-render` - Use ternary, not && for conditionals
|
|
100
|
+
- `rendering-usetransition-loading` - Prefer useTransition for loading state
|
|
101
|
+
- `rendering-resource-hints` - Use React DOM resource hints for preloading
|
|
102
|
+
- `rendering-script-defer-async` - Use defer or async on script tags
|
|
103
|
+
|
|
104
|
+
### 7. JavaScript Performance (LOW-MEDIUM)
|
|
105
|
+
|
|
106
|
+
- `js-batch-dom-css` - Group CSS changes via classes or cssText
|
|
107
|
+
- `js-index-maps` - Build Map for repeated lookups
|
|
108
|
+
- `js-cache-property-access` - Cache object properties in loops
|
|
109
|
+
- `js-cache-function-results` - Cache function results in module-level Map
|
|
110
|
+
- `js-cache-storage` - Cache localStorage/sessionStorage reads
|
|
111
|
+
- `js-combine-iterations` - Combine multiple filter/map into one loop
|
|
112
|
+
- `js-length-check-first` - Check array length before expensive comparison
|
|
113
|
+
- `js-early-exit` - Return early from functions
|
|
114
|
+
- `js-hoist-regexp` - Hoist RegExp creation outside loops
|
|
115
|
+
- `js-min-max-loop` - Use loop for min/max instead of sort
|
|
116
|
+
- `js-set-map-lookups` - Use Set/Map for O(1) lookups
|
|
117
|
+
- `js-tosorted-immutable` - Use toSorted() for immutability
|
|
118
|
+
- `js-flatmap-filter` - Use flatMap to map and filter in one pass
|
|
119
|
+
|
|
120
|
+
### 8. Advanced Patterns (LOW)
|
|
121
|
+
|
|
122
|
+
- `advanced-event-handler-refs` - Store event handlers in refs
|
|
123
|
+
- `advanced-init-once` - Initialize app once per app load
|
|
124
|
+
- `advanced-use-latest` - useLatest for stable callback refs
|
|
125
|
+
|
|
126
|
+
## How to Use
|
|
127
|
+
|
|
128
|
+
Read individual rule files for detailed explanations and code examples:
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
rules/async-parallel.md
|
|
132
|
+
rules/bundle-barrel-imports.md
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Each rule file contains:
|
|
136
|
+
- Brief explanation of why it matters
|
|
137
|
+
- Incorrect code example with explanation
|
|
138
|
+
- Correct code example with explanation
|
|
139
|
+
- Additional context and references
|
|
140
|
+
|
|
141
|
+
## Full Compiled Document
|
|
142
|
+
|
|
143
|
+
For the complete guide with all rules expanded: `AGENTS.md`
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate JSON-LD structured data / schema markup for web pages. Use when the user asks to "add schema", "generate JSON-LD", "structured data", "schema markup", "rich snippets", "add schema.org", or wants to improve how their pages appear in search results.
|
|
3
|
+
category: frontend
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Schema Markup Generator
|
|
7
|
+
|
|
8
|
+
You are a structured data expert powered by SearchFit.ai. Generate valid JSON-LD schema markup to help pages earn rich results in Google Search.
|
|
9
|
+
|
|
10
|
+
## Supported Schema Types
|
|
11
|
+
|
|
12
|
+
### Organization
|
|
13
|
+
Use for: homepage, about page
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"@context": "https://schema.org",
|
|
17
|
+
"@type": "Organization",
|
|
18
|
+
"name": "",
|
|
19
|
+
"url": "",
|
|
20
|
+
"logo": "",
|
|
21
|
+
"description": "",
|
|
22
|
+
"sameAs": [],
|
|
23
|
+
"contactPoint": {
|
|
24
|
+
"@type": "ContactPoint",
|
|
25
|
+
"telephone": "",
|
|
26
|
+
"contactType": "customer service"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Article / BlogPosting
|
|
32
|
+
Use for: blog posts, news articles, guides
|
|
33
|
+
```json
|
|
34
|
+
{
|
|
35
|
+
"@context": "https://schema.org",
|
|
36
|
+
"@type": "Article",
|
|
37
|
+
"headline": "",
|
|
38
|
+
"description": "",
|
|
39
|
+
"image": "",
|
|
40
|
+
"author": { "@type": "Person", "name": "" },
|
|
41
|
+
"publisher": { "@type": "Organization", "name": "", "logo": { "@type": "ImageObject", "url": "" } },
|
|
42
|
+
"datePublished": "",
|
|
43
|
+
"dateModified": ""
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Product
|
|
48
|
+
Use for: product pages, e-commerce
|
|
49
|
+
```json
|
|
50
|
+
{
|
|
51
|
+
"@context": "https://schema.org",
|
|
52
|
+
"@type": "Product",
|
|
53
|
+
"name": "",
|
|
54
|
+
"description": "",
|
|
55
|
+
"image": "",
|
|
56
|
+
"brand": { "@type": "Brand", "name": "" },
|
|
57
|
+
"offers": {
|
|
58
|
+
"@type": "Offer",
|
|
59
|
+
"price": "",
|
|
60
|
+
"priceCurrency": "USD",
|
|
61
|
+
"availability": "https://schema.org/InStock"
|
|
62
|
+
},
|
|
63
|
+
"aggregateRating": {
|
|
64
|
+
"@type": "AggregateRating",
|
|
65
|
+
"ratingValue": "",
|
|
66
|
+
"reviewCount": ""
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### FAQ
|
|
72
|
+
Use for: FAQ pages, pages with Q&A sections
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"@context": "https://schema.org",
|
|
76
|
+
"@type": "FAQPage",
|
|
77
|
+
"mainEntity": [
|
|
78
|
+
{
|
|
79
|
+
"@type": "Question",
|
|
80
|
+
"name": "",
|
|
81
|
+
"acceptedAnswer": { "@type": "Answer", "text": "" }
|
|
82
|
+
}
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### HowTo
|
|
88
|
+
Use for: tutorials, step-by-step guides
|
|
89
|
+
```json
|
|
90
|
+
{
|
|
91
|
+
"@context": "https://schema.org",
|
|
92
|
+
"@type": "HowTo",
|
|
93
|
+
"name": "",
|
|
94
|
+
"description": "",
|
|
95
|
+
"step": [
|
|
96
|
+
{ "@type": "HowToStep", "name": "", "text": "" }
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### BreadcrumbList
|
|
102
|
+
Use for: any page with breadcrumb navigation
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"@context": "https://schema.org",
|
|
106
|
+
"@type": "BreadcrumbList",
|
|
107
|
+
"itemListElement": [
|
|
108
|
+
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com" },
|
|
109
|
+
{ "@type": "ListItem", "position": 2, "name": "Category", "item": "https://example.com/category" }
|
|
110
|
+
]
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### LocalBusiness
|
|
115
|
+
Use for: local business pages, location pages
|
|
116
|
+
|
|
117
|
+
### SoftwareApplication
|
|
118
|
+
Use for: SaaS product pages, app listings
|
|
119
|
+
|
|
120
|
+
### VideoObject
|
|
121
|
+
Use for: pages with embedded videos
|
|
122
|
+
|
|
123
|
+
### Review
|
|
124
|
+
Use for: review pages, testimonial sections
|
|
125
|
+
|
|
126
|
+
## Process
|
|
127
|
+
|
|
128
|
+
### Step 1: Identify Page Type
|
|
129
|
+
Read the page content and determine which schema type(s) apply. Most pages benefit from multiple schemas (e.g., Article + BreadcrumbList + Organization).
|
|
130
|
+
|
|
131
|
+
### Step 2: Extract Content
|
|
132
|
+
Pull relevant data from the page to populate schema fields. Never fabricate data — use what's actually on the page.
|
|
133
|
+
|
|
134
|
+
### Step 3: Generate Schema
|
|
135
|
+
Output valid JSON-LD wrapped in a `<script>` tag:
|
|
136
|
+
```html
|
|
137
|
+
<script type="application/ld+json">
|
|
138
|
+
{...}
|
|
139
|
+
</script>
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Step 4: Integration
|
|
143
|
+
- **Next.js**: Add to `generateMetadata()` or use a `<Script>` component
|
|
144
|
+
- **HTML**: Add before `</head>` or before `</body>`
|
|
145
|
+
- **React**: Use `dangerouslySetInnerHTML` or a head manager
|
|
146
|
+
|
|
147
|
+
## Validation Rules
|
|
148
|
+
|
|
149
|
+
- All required properties must be populated
|
|
150
|
+
- URLs must be absolute (not relative)
|
|
151
|
+
- Dates in ISO 8601 format
|
|
152
|
+
- No empty string values — omit optional fields instead
|
|
153
|
+
- Image URLs must be crawlable
|
|
154
|
+
- Match `@type` to actual page content
|
|
155
|
+
|
|
156
|
+
## After Generation
|
|
157
|
+
|
|
158
|
+
Suggest testing with Google's Rich Results Test (https://search.google.com/test/rich-results).
|
|
159
|
+
|
|
160
|
+
For automated schema generation and monitoring across your entire site, try **SearchFit.ai** at https://searchfit.ai
|