claude-code-templates 1.21.13 → 1.21.14
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/.claude/settings.local.json +8 -2
- package/.claude-plugin/marketplace.json +251 -0
- package/.github/workflows/component-security-validation.yml +129 -0
- package/README.md +13 -6
- package/cli-tool/README.md +56 -0
- package/cli-tool/bin/create-claude-config.js +2 -0
- package/cli-tool/components/.claude-plugin/marketplace.json +92 -0
- package/cli-tool/components/agents/development-tools/flutter-go-reviewer.md +163 -0
- package/cli-tool/components/agents/development-tools/unused-code-cleaner.md +194 -0
- package/cli-tool/components/commands/git-workflow/gemini-review.md +293 -0
- package/cli-tool/components/commands/testing/add-mutation-testing.md +2 -2
- package/cli-tool/components/commands/testing/add-property-based-testing.md +2 -2
- package/cli-tool/components/commands/testing/e2e-setup.md +2 -2
- package/cli-tool/components/commands/testing/generate-test-cases.md +2 -2
- package/cli-tool/components/commands/testing/generate-tests.md +8 -3
- package/cli-tool/components/commands/testing/setup-comprehensive-testing.md +2 -2
- package/cli-tool/components/commands/testing/setup-load-testing.md +2 -2
- package/cli-tool/components/commands/testing/setup-visual-testing.md +2 -2
- package/cli-tool/components/commands/testing/test-automation-orchestrator.md +2 -2
- package/cli-tool/components/commands/testing/test-changelog-automation.md +2 -2
- package/cli-tool/components/commands/testing/test-coverage.md +2 -2
- package/cli-tool/components/commands/testing/test-quality-analyzer.md +2 -2
- package/cli-tool/components/commands/testing/testing_plan_integration.md +2 -2
- package/cli-tool/components/commands/testing/write-tests.md +2 -2
- package/cli-tool/components/commands/utilities/ultra-think.md +10 -5
- package/cli-tool/components/hooks/git/validate-branch-name.json +1 -1
- package/cli-tool/components/mcps/devtools/chrome-devtools.json +9 -0
- package/cli-tool/components/mcps/devtools/grafana.json +15 -0
- package/cli-tool/components/mcps/devtools/pulumi.json +9 -0
- package/cli-tool/components/mcps/devtools/terraform.json +1 -1
- package/cli-tool/components/settings/statusline/context-monitor.py +1 -1
- package/cli-tool/components/skills/ANTHROPIC_ATTRIBUTION.md +81 -0
- package/cli-tool/components/skills/creative-design/algorithmic-art/LICENSE.txt +202 -0
- package/cli-tool/components/skills/creative-design/algorithmic-art/SKILL.md +405 -0
- package/cli-tool/components/skills/creative-design/algorithmic-art/templates/generator_template.js +223 -0
- package/cli-tool/components/skills/creative-design/algorithmic-art/templates/viewer.html +599 -0
- package/cli-tool/components/skills/creative-design/canvas-design/LICENSE.txt +202 -0
- package/cli-tool/components/skills/creative-design/canvas-design/SKILL.md +130 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/cli-tool/components/skills/creative-design/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/LICENSE.txt +202 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/SKILL.md +646 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/color_palettes.py +302 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/easing.py +230 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/frame_composer.py +469 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/gif_builder.py +246 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/typography.py +357 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/validators.py +264 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/core/visual_effects.py +494 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/requirements.txt +4 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/bounce.py +106 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/explode.py +331 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/fade.py +329 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/flip.py +291 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/kaleidoscope.py +211 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/morph.py +329 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/move.py +293 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/pulse.py +268 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/shake.py +127 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/slide.py +291 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/spin.py +269 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/wiggle.py +300 -0
- package/cli-tool/components/skills/creative-design/slack-gif-creator/templates/zoom.py +312 -0
- package/cli-tool/components/skills/creative-design/theme-factory/LICENSE.txt +202 -0
- package/cli-tool/components/skills/creative-design/theme-factory/SKILL.md +59 -0
- package/cli-tool/components/skills/creative-design/theme-factory/theme-showcase.pdf +0 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/arctic-frost.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/botanical-garden.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/desert-rose.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/forest-canopy.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/golden-hour.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/midnight-galaxy.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/modern-minimalist.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/ocean-depths.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/sunset-boulevard.md +19 -0
- package/cli-tool/components/skills/creative-design/theme-factory/themes/tech-innovation.md +19 -0
- package/cli-tool/components/skills/development/artifacts-builder/LICENSE.txt +202 -0
- package/cli-tool/components/skills/development/artifacts-builder/SKILL.md +74 -0
- package/cli-tool/components/skills/development/artifacts-builder/scripts/bundle-artifact.sh +54 -0
- package/cli-tool/components/skills/development/artifacts-builder/scripts/init-artifact.sh +322 -0
- package/cli-tool/components/skills/development/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
- package/cli-tool/components/skills/development/git-commit-helper/SKILL.md +203 -0
- package/cli-tool/components/skills/development/mcp-builder/LICENSE.txt +202 -0
- package/cli-tool/components/skills/development/mcp-builder/SKILL.md +328 -0
- package/cli-tool/components/skills/development/mcp-builder/reference/evaluation.md +602 -0
- package/cli-tool/components/skills/development/mcp-builder/reference/mcp_best_practices.md +915 -0
- package/cli-tool/components/skills/development/mcp-builder/reference/node_mcp_server.md +916 -0
- package/cli-tool/components/skills/development/mcp-builder/reference/python_mcp_server.md +752 -0
- package/cli-tool/components/skills/development/mcp-builder/scripts/connections.py +151 -0
- package/cli-tool/components/skills/development/mcp-builder/scripts/evaluation.py +373 -0
- package/cli-tool/components/skills/development/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/cli-tool/components/skills/development/mcp-builder/scripts/requirements.txt +2 -0
- package/cli-tool/components/skills/development/skill-creator/LICENSE.txt +202 -0
- package/cli-tool/components/skills/development/skill-creator/SKILL.md +209 -0
- package/cli-tool/components/skills/development/skill-creator/scripts/init_skill.py +303 -0
- package/cli-tool/components/skills/development/skill-creator/scripts/package_skill.py +110 -0
- package/cli-tool/components/skills/development/skill-creator/scripts/quick_validate.py +65 -0
- package/cli-tool/components/skills/development/webapp-testing/LICENSE.txt +202 -0
- package/cli-tool/components/skills/development/webapp-testing/SKILL.md +96 -0
- package/cli-tool/components/skills/development/webapp-testing/examples/console_logging.py +35 -0
- package/cli-tool/components/skills/development/webapp-testing/examples/element_discovery.py +40 -0
- package/cli-tool/components/skills/development/webapp-testing/examples/static_html_automation.py +33 -0
- package/cli-tool/components/skills/development/webapp-testing/scripts/with_server.py +106 -0
- package/cli-tool/components/skills/document-processing/docx/LICENSE.txt +30 -0
- package/cli-tool/components/skills/document-processing/docx/SKILL.md +197 -0
- package/cli-tool/components/skills/document-processing/docx/docx-js.md +350 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/pack.py +159 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/unpack.py +29 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validate.py +69 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validation/base.py +951 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validation/docx.py +274 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/cli-tool/components/skills/document-processing/docx/ooxml.md +610 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/__init__.py +1 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/document.py +1276 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/templates/comments.xml +3 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/templates/commentsExtended.xml +3 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/templates/commentsIds.xml +3 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/templates/people.xml +3 -0
- package/cli-tool/components/skills/document-processing/docx/scripts/utilities.py +374 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/LICENSE.txt +30 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/SKILL.md +294 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/forms.md +205 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/reference.md +612 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/check_bounding_boxes.py +70 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/check_bounding_boxes_test.py +226 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/check_fillable_fields.py +12 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/convert_pdf_to_images.py +35 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/create_validation_image.py +41 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/extract_form_field_info.py +152 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/fill_fillable_fields.py +114 -0
- package/cli-tool/components/skills/document-processing/pdf-anthropic/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/cli-tool/components/skills/document-processing/pdf-processing/FORMS.md +143 -0
- package/cli-tool/components/skills/document-processing/pdf-processing/SKILL.md +149 -0
- package/cli-tool/components/skills/document-processing/pdf-processing-pro/FORMS.md +610 -0
- package/cli-tool/components/skills/document-processing/pdf-processing-pro/OCR.md +137 -0
- package/cli-tool/components/skills/document-processing/pdf-processing-pro/SKILL.md +296 -0
- package/cli-tool/components/skills/document-processing/pdf-processing-pro/TABLES.md +626 -0
- package/cli-tool/components/skills/document-processing/pdf-processing-pro/scripts/analyze_form.py +307 -0
- package/cli-tool/components/skills/document-processing/pptx/LICENSE.txt +30 -0
- package/cli-tool/components/skills/document-processing/pptx/SKILL.md +484 -0
- package/cli-tool/components/skills/document-processing/pptx/html2pptx.md +625 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/pack.py +159 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/unpack.py +29 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validate.py +69 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validation/base.py +951 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/cli-tool/components/skills/document-processing/pptx/ooxml.md +427 -0
- package/cli-tool/components/skills/document-processing/pptx/scripts/html2pptx.js +979 -0
- package/cli-tool/components/skills/document-processing/pptx/scripts/inventory.py +1020 -0
- package/cli-tool/components/skills/document-processing/pptx/scripts/rearrange.py +231 -0
- package/cli-tool/components/skills/document-processing/pptx/scripts/replace.py +385 -0
- package/cli-tool/components/skills/document-processing/pptx/scripts/thumbnail.py +450 -0
- package/cli-tool/components/skills/document-processing/xlsx/LICENSE.txt +30 -0
- package/cli-tool/components/skills/document-processing/xlsx/SKILL.md +289 -0
- package/cli-tool/components/skills/document-processing/xlsx/recalc.py +178 -0
- package/cli-tool/components/skills/enterprise-communication/brand-guidelines/LICENSE.txt +202 -0
- package/cli-tool/components/skills/enterprise-communication/brand-guidelines/SKILL.md +73 -0
- package/cli-tool/components/skills/enterprise-communication/email-composer/SKILL.md +317 -0
- package/cli-tool/components/skills/enterprise-communication/excel-analysis/SKILL.md +247 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/LICENSE.txt +202 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/SKILL.md +32 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/examples/3p-updates.md +47 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/examples/company-newsletter.md +65 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/examples/faq-answers.md +30 -0
- package/cli-tool/components/skills/enterprise-communication/internal-comms/examples/general-comms.md +16 -0
- package/cli-tool/package-lock.json +39 -16
- package/cli-tool/package.json +7 -2
- package/cli-tool/security-report.json +62361 -0
- package/cli-tool/src/analytics-web/chats_mobile.html +17 -16
- package/cli-tool/src/console-bridge.js +3 -3
- package/cli-tool/src/index.js +157 -10
- package/cli-tool/src/plugin-dashboard-web/app.js +806 -0
- package/cli-tool/src/plugin-dashboard-web/index.html +292 -0
- package/cli-tool/src/plugin-dashboard-web/styles.css +1781 -0
- package/cli-tool/src/plugin-dashboard.js +689 -0
- package/cli-tool/src/security-audit.js +164 -0
- package/cli-tool/src/validation/ARCHITECTURE.md +309 -0
- package/cli-tool/src/validation/BaseValidator.js +152 -0
- package/cli-tool/src/validation/README.md +543 -0
- package/cli-tool/src/validation/ValidationOrchestrator.js +305 -0
- package/cli-tool/src/validation/validators/IntegrityValidator.js +338 -0
- package/cli-tool/src/validation/validators/ProvenanceValidator.js +399 -0
- package/cli-tool/src/validation/validators/ReferenceValidator.js +373 -0
- package/cli-tool/src/validation/validators/SemanticValidator.js +449 -0
- package/cli-tool/src/validation/validators/StructuralValidator.js +376 -0
- package/docs/CLAUDE.md +363 -0
- package/docs/api/README.md +297 -0
- package/docs/api/package.json +7 -0
- package/docs/api/track-download-supabase.js +150 -0
- package/docs/blog/README.md +199 -0
- package/docs/blog/blog-articles.json +133 -0
- package/docs/blog/css/blog-controls.css +254 -0
- package/docs/blog/e2b-claude-code-sandbox/index.html +8 -0
- package/docs/blog/index.html +81 -124
- package/docs/blog/js/blog-loader.js +602 -0
- package/docs/blog/nextjs-vercel-claude-code-integration/index.html +8 -0
- package/docs/blog/supabase-claude-code-integration/index.html +8 -0
- package/docs/component.html +226 -48
- package/docs/components.json +61610 -604
- package/docs/css/blog.css +292 -0
- package/docs/css/component-page.css +840 -3
- package/docs/css/plugin-page.css +648 -0
- package/docs/css/styles.css +504 -1
- package/docs/css/trending.css +110 -6
- package/docs/download-stats.html +8 -0
- package/docs/index.html +48 -22
- package/docs/jobs.html +8 -0
- package/docs/js/cart-manager.js +21 -8
- package/docs/js/component-page.js +1013 -12
- package/docs/js/data-loader.js +11 -8
- package/docs/js/index-events.js +305 -53
- package/docs/js/plugin-page.js +390 -0
- package/docs/js/script.js +50 -3
- package/docs/js/search-functionality.js +19 -16
- package/docs/js/trending.js +55 -20
- package/docs/plugin.html +262 -0
- package/docs/sandbox-interface.html +8 -0
- package/docs/static/favicon/about.txt +6 -0
- package/docs/static/favicon/android-chrome-192x192.png +0 -0
- package/docs/static/favicon/android-chrome-512x512.png +0 -0
- package/docs/static/favicon/apple-touch-icon.png +0 -0
- package/docs/static/favicon/favicon-16x16.png +0 -0
- package/docs/static/favicon/favicon-32x32.png +0 -0
- package/docs/static/favicon/favicon.ico +0 -0
- package/docs/static/favicon/site.webmanifest +1 -0
- package/docs/trending-data.json +616 -579
- package/docs/trending.html +24 -3
- package/docs/vercel.json +12 -0
- package/docs/workflows.html +8 -0
- package/generate_components_json.py +386 -11
- package/package.json +1 -1
- package/sync-api.sh +50 -0
- package/vercel.json +10 -75
- package/ROADMAP.md +0 -278
- package/test_serpapi.py +0 -36
- /package/cli-tool/components/commands/svelte/{svelte:a11y.md → svelte-a11y.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:component.md → svelte-component.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:debug.md → svelte-debug.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:migrate.md → svelte-migrate.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:optimize.md → svelte-optimize.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:scaffold.md → svelte-scaffold.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook-migrate.md → svelte-storybook-migrate.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook-mock.md → svelte-storybook-mock.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook-setup.md → svelte-storybook-setup.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook-story.md → svelte-storybook-story.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook-troubleshoot.md → svelte-storybook-troubleshoot.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:storybook.md → svelte-storybook.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:test-coverage.md → svelte-test-coverage.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:test-fix.md → svelte-test-fix.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:test-setup.md → svelte-test-setup.md} +0 -0
- /package/cli-tool/components/commands/svelte/{svelte:test.md → svelte-test.md} +0 -0
package/docs/CLAUDE.md
ADDED
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
This directory contains the static website (aitmpl.com) that serves as the public web interface for browsing and installing Claude Code components. The site is a vanilla JavaScript application that loads component data dynamically and provides an interactive browsing experience for 500+ components including agents, commands, settings, hooks, MCPs, and templates.
|
|
8
|
+
|
|
9
|
+
## Development Commands
|
|
10
|
+
|
|
11
|
+
### Local Development
|
|
12
|
+
```bash
|
|
13
|
+
# Serve locally with any static file server
|
|
14
|
+
python -m http.server 8000
|
|
15
|
+
# or
|
|
16
|
+
npx http-server
|
|
17
|
+
|
|
18
|
+
# Open browser to http://localhost:8000
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Component Data Generation
|
|
22
|
+
```bash
|
|
23
|
+
# From project root - regenerate components.json
|
|
24
|
+
cd ..
|
|
25
|
+
python generate_components_json.py
|
|
26
|
+
|
|
27
|
+
# This creates/updates docs/components.json with all components
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### Deployment
|
|
31
|
+
- Site is automatically deployed to GitHub Pages when changes are pushed to `docs/` directory
|
|
32
|
+
- Deployed at: https://aitmpl.com (davila7.github.io/claude-code-templates)
|
|
33
|
+
- Vercel configuration in `vercel.json` for routing
|
|
34
|
+
|
|
35
|
+
## Architecture
|
|
36
|
+
|
|
37
|
+
### Data Flow
|
|
38
|
+
1. **Component Generation**: Python script (`generate_components_json.py`) scans `cli-tool/components/` and generates `docs/components.json` (~2MB file with embedded content)
|
|
39
|
+
2. **Static Loading**: Website loads `components.json` on page load (with mobile optimization and progress indicators)
|
|
40
|
+
3. **Dynamic Rendering**: JavaScript renders component cards based on user filters and search
|
|
41
|
+
4. **Download Tracking**: Supabase integration tracks component installations via backend API
|
|
42
|
+
|
|
43
|
+
### Key Files
|
|
44
|
+
|
|
45
|
+
#### HTML Pages
|
|
46
|
+
- `index.html` - Main page with component browser and search
|
|
47
|
+
- `component.html` - Individual component detail pages
|
|
48
|
+
- `plugin.html` - Plugin marketplace interface
|
|
49
|
+
- `trending.html` - Trending components dashboard
|
|
50
|
+
- `download-stats.html` - Analytics and download statistics
|
|
51
|
+
|
|
52
|
+
#### JavaScript Architecture (`js/`)
|
|
53
|
+
- `data-loader.js` - Loads and caches components.json, handles data fetching
|
|
54
|
+
- `search-functionality.js` - Real-time search across all components with fuzzy matching
|
|
55
|
+
- `cart-manager.js` - Shopping cart for batch component installation
|
|
56
|
+
- `stack-router.js` - Client-side routing for company stacks and plugins
|
|
57
|
+
- `index-events.js` - Event handlers for filters, modals, and user interactions
|
|
58
|
+
- `plugin-page.js` - Plugin marketplace functionality
|
|
59
|
+
- `trending.js` - Trending components data visualization
|
|
60
|
+
|
|
61
|
+
#### CSS (`css/`)
|
|
62
|
+
- Modular CSS with separate files for components, modals, responsive design
|
|
63
|
+
- Terminal-themed design system with monospace fonts and CLI aesthetics
|
|
64
|
+
|
|
65
|
+
#### Data Files
|
|
66
|
+
- `components.json` - Main component catalog (~2MB, generated file)
|
|
67
|
+
- `trending-data.json` - Trending components rankings
|
|
68
|
+
- `claude-jobs.json` - Job postings data
|
|
69
|
+
|
|
70
|
+
### Component System
|
|
71
|
+
|
|
72
|
+
#### Component Types
|
|
73
|
+
Each component type has specific structure:
|
|
74
|
+
|
|
75
|
+
**Agents** (162 total)
|
|
76
|
+
- AI specialists organized by category (Development, Data/AI, Security, Business, etc.)
|
|
77
|
+
- Stored in `cli-tool/components/agents/{category}/{name}.md`
|
|
78
|
+
- Installation: `--agent <name>`
|
|
79
|
+
|
|
80
|
+
**Commands** (210 total)
|
|
81
|
+
- Custom slash commands organized by category
|
|
82
|
+
- Stored in `cli-tool/components/commands/{category}/{name}.md`
|
|
83
|
+
- Installation: `--command <name>`
|
|
84
|
+
|
|
85
|
+
**Settings** (60 total)
|
|
86
|
+
- Claude Code configuration files
|
|
87
|
+
- Includes statuslines with accompanying Python scripts
|
|
88
|
+
- Stored in `cli-tool/components/settings/{category}/{name}.json`
|
|
89
|
+
- Installation: `--setting <name>`
|
|
90
|
+
|
|
91
|
+
**Hooks** (39 total)
|
|
92
|
+
- Event-driven automation triggers
|
|
93
|
+
- Stored in `cli-tool/components/hooks/{category}/{name}.md`
|
|
94
|
+
- Installation: `--hook <name>`
|
|
95
|
+
|
|
96
|
+
**MCPs** (55 total)
|
|
97
|
+
- Model Context Protocol integrations
|
|
98
|
+
- Stored in `cli-tool/components/mcps/{name}.json`
|
|
99
|
+
- Installation: `--mcp <name>`
|
|
100
|
+
|
|
101
|
+
**Templates** (14 total)
|
|
102
|
+
- Complete project configurations
|
|
103
|
+
- Organized by language and framework in `cli-tool/templates/`
|
|
104
|
+
- Installation: `--template <language>`
|
|
105
|
+
|
|
106
|
+
**Plugins** (10 total)
|
|
107
|
+
- Component bundles with marketplace metadata
|
|
108
|
+
- Defined in `.claude-plugin/marketplace.json`
|
|
109
|
+
- Installation: `--plugin <name>`
|
|
110
|
+
|
|
111
|
+
### Data Loading Strategy
|
|
112
|
+
|
|
113
|
+
The site implements a multi-stage loading strategy for optimal mobile performance:
|
|
114
|
+
|
|
115
|
+
1. **Initial Load**: Show loading indicator with progress bar
|
|
116
|
+
2. **Lazy Parsing**: Load components.json in chunks to avoid blocking
|
|
117
|
+
3. **Progressive Rendering**: Render visible cards first, lazy-load others
|
|
118
|
+
4. **Search Indexing**: Build search index in background
|
|
119
|
+
5. **Caching**: LocalStorage caching for repeat visits
|
|
120
|
+
|
|
121
|
+
### Search Functionality
|
|
122
|
+
|
|
123
|
+
Real-time search across all components:
|
|
124
|
+
- **Fuzzy Matching**: Tolerates typos and partial matches
|
|
125
|
+
- **Multi-field Search**: Searches name, description, category, type
|
|
126
|
+
- **Filter Integration**: Combines with type filters (agents/commands/etc)
|
|
127
|
+
- **Category Filtering**: Dynamic category chips based on active filter
|
|
128
|
+
- **Sorting**: Alphabetical or by download count
|
|
129
|
+
|
|
130
|
+
### Shopping Cart System
|
|
131
|
+
|
|
132
|
+
Batch installation builder:
|
|
133
|
+
- Add multiple components across types (agents, commands, settings, hooks, MCPs)
|
|
134
|
+
- Generates single NPX command for installation
|
|
135
|
+
- Supports sharing cart via URL parameters
|
|
136
|
+
- Social sharing to Twitter/Threads
|
|
137
|
+
|
|
138
|
+
### Plugin Marketplace
|
|
139
|
+
|
|
140
|
+
Plugin system for component bundles:
|
|
141
|
+
- Each plugin contains agents, commands, and MCPs
|
|
142
|
+
- Defined in marketplace.json with metadata
|
|
143
|
+
- Installation installs all plugin components
|
|
144
|
+
- Examples: `supabase-toolkit`, `nextjs-vercel-pro`, `ai-ml-toolkit`
|
|
145
|
+
|
|
146
|
+
### Download Analytics
|
|
147
|
+
|
|
148
|
+
Supabase-powered analytics:
|
|
149
|
+
- Tracks component installations via API endpoints
|
|
150
|
+
- Aggregates download counts by component and type
|
|
151
|
+
- Displays trending components and download stats
|
|
152
|
+
- Real-time updates with background refresh
|
|
153
|
+
|
|
154
|
+
## Important Implementation Patterns
|
|
155
|
+
|
|
156
|
+
### Component Data Structure
|
|
157
|
+
|
|
158
|
+
```javascript
|
|
159
|
+
// components.json structure
|
|
160
|
+
{
|
|
161
|
+
"agents": [{
|
|
162
|
+
"name": "agent-name",
|
|
163
|
+
"category": "category-name",
|
|
164
|
+
"content": "Full markdown content...",
|
|
165
|
+
"path": "agents/category/agent-name.md",
|
|
166
|
+
"url": "https://github.com/..."
|
|
167
|
+
}],
|
|
168
|
+
"commands": [...],
|
|
169
|
+
"mcps": [...],
|
|
170
|
+
"settings": [...],
|
|
171
|
+
"hooks": [...],
|
|
172
|
+
"templates": [...],
|
|
173
|
+
"plugins": [...]
|
|
174
|
+
}
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### Dynamic Component Loading
|
|
178
|
+
|
|
179
|
+
```javascript
|
|
180
|
+
// Loading pattern from data-loader.js
|
|
181
|
+
async function loadAllComponentsData() {
|
|
182
|
+
const response = await fetch('components.json');
|
|
183
|
+
const data = await response.json();
|
|
184
|
+
componentsData = data;
|
|
185
|
+
collectAvailableCategories();
|
|
186
|
+
generateUnifiedComponentCards();
|
|
187
|
+
}
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Filter and Category System
|
|
191
|
+
|
|
192
|
+
```javascript
|
|
193
|
+
// Current filter state
|
|
194
|
+
let currentFilter = 'agents'; // or 'commands', 'mcps', etc.
|
|
195
|
+
let currentCategoryFilter = 'all'; // or specific category
|
|
196
|
+
|
|
197
|
+
// Update filters
|
|
198
|
+
function handleFilterClick(event, filter) {
|
|
199
|
+
currentFilter = filter;
|
|
200
|
+
updateCategorySubFilters();
|
|
201
|
+
generateUnifiedComponentCards();
|
|
202
|
+
}
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Installation Command Generation
|
|
206
|
+
|
|
207
|
+
```javascript
|
|
208
|
+
// Pattern from cart-manager.js
|
|
209
|
+
function generateCartCommand(cart) {
|
|
210
|
+
const flags = [];
|
|
211
|
+
if (cart.agents.length) flags.push(...cart.agents.map(a => `--agent ${a}`));
|
|
212
|
+
if (cart.commands.length) flags.push(...cart.commands.map(c => `--command ${c}`));
|
|
213
|
+
// ... other types
|
|
214
|
+
return `npx claude-code-templates@latest ${flags.join(' ')} --yes`;
|
|
215
|
+
}
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
## File Generation Workflow
|
|
219
|
+
|
|
220
|
+
### Updating Component Catalog
|
|
221
|
+
|
|
222
|
+
When components are added/modified in `cli-tool/components/`:
|
|
223
|
+
|
|
224
|
+
1. Run component generation script:
|
|
225
|
+
```bash
|
|
226
|
+
cd /path/to/project/root
|
|
227
|
+
python generate_components_json.py
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
2. This script:
|
|
231
|
+
- Scans all directories in `cli-tool/components/`
|
|
232
|
+
- Scans all templates in `cli-tool/templates/`
|
|
233
|
+
- Fetches download stats from Supabase
|
|
234
|
+
- Embeds file content inline
|
|
235
|
+
- Excludes Python scripts from public listings (but includes them as dependencies)
|
|
236
|
+
- Generates `docs/components.json`
|
|
237
|
+
|
|
238
|
+
3. Commit changes:
|
|
239
|
+
```bash
|
|
240
|
+
git add docs/components.json
|
|
241
|
+
git commit -m "Update component catalog"
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
### Testing Locally
|
|
245
|
+
|
|
246
|
+
Before committing:
|
|
247
|
+
1. Serve site locally: `python -m http.server 8000`
|
|
248
|
+
2. Test component loading and search
|
|
249
|
+
3. Verify filter functionality
|
|
250
|
+
4. Check responsive design on mobile
|
|
251
|
+
5. Test cart and installation command generation
|
|
252
|
+
|
|
253
|
+
## SEO and Metadata
|
|
254
|
+
|
|
255
|
+
### Structured Data
|
|
256
|
+
- Schema.org markup for SoftwareApplication
|
|
257
|
+
- Open Graph tags for social sharing
|
|
258
|
+
- Twitter Card metadata
|
|
259
|
+
- Sitemap.xml for search engines
|
|
260
|
+
|
|
261
|
+
### Performance Optimization
|
|
262
|
+
- Cache-busting query parameters for dynamic content
|
|
263
|
+
- Progressive loading for large JSON files
|
|
264
|
+
- LocalStorage caching for repeat visits
|
|
265
|
+
- Lazy loading for images and components below fold
|
|
266
|
+
|
|
267
|
+
## External Integrations
|
|
268
|
+
|
|
269
|
+
### GitHub API
|
|
270
|
+
- Fetches component files dynamically (legacy, now uses components.json)
|
|
271
|
+
- Links to source files on GitHub
|
|
272
|
+
|
|
273
|
+
### Supabase
|
|
274
|
+
- Tracks component downloads
|
|
275
|
+
- Aggregates download statistics
|
|
276
|
+
- Powers trending components
|
|
277
|
+
|
|
278
|
+
### Vercel
|
|
279
|
+
- Handles routing for SPA-style URLs
|
|
280
|
+
- Configured in `vercel.json`
|
|
281
|
+
|
|
282
|
+
### Analytics
|
|
283
|
+
- Hotjar for user behavior tracking
|
|
284
|
+
- Counter.dev for page view analytics
|
|
285
|
+
|
|
286
|
+
## Deployment Checklist
|
|
287
|
+
|
|
288
|
+
Before deploying to production:
|
|
289
|
+
|
|
290
|
+
1. **Component Data**: Run `python generate_components_json.py` to update components.json
|
|
291
|
+
2. **Test Locally**: Verify all pages load correctly
|
|
292
|
+
3. **Check Links**: Ensure GitHub links point to correct paths
|
|
293
|
+
4. **Verify Search**: Test search functionality with various queries
|
|
294
|
+
5. **Mobile Testing**: Check responsive design on multiple devices
|
|
295
|
+
6. **Cart Testing**: Verify installation commands are generated correctly
|
|
296
|
+
7. **Analytics**: Confirm tracking is working
|
|
297
|
+
|
|
298
|
+
## Common Development Tasks
|
|
299
|
+
|
|
300
|
+
### Adding New Component Type
|
|
301
|
+
|
|
302
|
+
1. Update `generate_components_json.py` to scan new component directory
|
|
303
|
+
2. Add new filter button in `index.html`
|
|
304
|
+
3. Add icon configuration in `js/script.js` typeConfig
|
|
305
|
+
4. Update cart-manager.js to handle new type
|
|
306
|
+
5. Regenerate components.json
|
|
307
|
+
|
|
308
|
+
### Modifying Search Behavior
|
|
309
|
+
|
|
310
|
+
Edit `js/search-functionality.js`:
|
|
311
|
+
- `performSearch()` - Main search logic
|
|
312
|
+
- `fuzzyMatch()` - Matching algorithm
|
|
313
|
+
- `highlightMatches()` - Result highlighting
|
|
314
|
+
|
|
315
|
+
### Updating Styles
|
|
316
|
+
|
|
317
|
+
CSS is modular:
|
|
318
|
+
- `css/styles.css` - Main styles and variables
|
|
319
|
+
- `css/components.css` - Component cards and grid
|
|
320
|
+
- `css/responsive.css` - Mobile breakpoints
|
|
321
|
+
- `css/modals.css` - Modal dialogs
|
|
322
|
+
- `css/cart.css` - Shopping cart sidebar
|
|
323
|
+
|
|
324
|
+
## Browser Compatibility
|
|
325
|
+
|
|
326
|
+
- Modern browsers (Chrome, Firefox, Safari, Edge)
|
|
327
|
+
- ES6+ JavaScript features (Fetch API, async/await, template literals)
|
|
328
|
+
- CSS Grid and Flexbox for layout
|
|
329
|
+
- No build step required (vanilla JavaScript)
|
|
330
|
+
|
|
331
|
+
## Performance Considerations
|
|
332
|
+
|
|
333
|
+
### Large File Handling
|
|
334
|
+
- `components.json` is ~2MB - implement progressive loading
|
|
335
|
+
- Use virtual scrolling for large component lists
|
|
336
|
+
- Debounce search input to avoid excessive filtering
|
|
337
|
+
- Cache parsed JSON in memory after initial load
|
|
338
|
+
|
|
339
|
+
### Mobile Optimization
|
|
340
|
+
- Lazy load images and component content
|
|
341
|
+
- Reduce initial bundle size
|
|
342
|
+
- Minimize re-renders during search/filter
|
|
343
|
+
- Use CSS animations sparingly
|
|
344
|
+
|
|
345
|
+
## Troubleshooting
|
|
346
|
+
|
|
347
|
+
### Components Not Loading
|
|
348
|
+
- Check browser console for fetch errors
|
|
349
|
+
- Verify components.json is accessible
|
|
350
|
+
- Ensure CORS is properly configured
|
|
351
|
+
- Check GitHub API rate limits (if using legacy loading)
|
|
352
|
+
|
|
353
|
+
### Search Not Working
|
|
354
|
+
- Verify search index is built correctly
|
|
355
|
+
- Check fuzzy match threshold in search-functionality.js
|
|
356
|
+
- Ensure component data includes searchable fields
|
|
357
|
+
|
|
358
|
+
### Cart Not Saving
|
|
359
|
+
- Check LocalStorage is enabled
|
|
360
|
+
- Verify cart data structure matches expected format
|
|
361
|
+
- Clear cache and reload if data structure changed
|
|
362
|
+
|
|
363
|
+
This website serves as the primary user interface for the Claude Code Templates ecosystem, providing an intuitive way to discover and install 500+ components through a terminal-themed, responsive web interface.
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# API Directory - Documentation
|
|
2
|
+
|
|
3
|
+
This directory contains both **static files** and **serverless functions** for the Claude Code Templates project deployed on Vercel.
|
|
4
|
+
|
|
5
|
+
## 📁 Structure Overview
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
docs/api/
|
|
9
|
+
├── README.md # This file
|
|
10
|
+
├── agents.json # Static JSON file for agent queries
|
|
11
|
+
├── package.json # Dependencies for serverless functions
|
|
12
|
+
└── track-download-supabase.js # Serverless function for download tracking
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 🔍 Why This Structure?
|
|
16
|
+
|
|
17
|
+
The project is configured with `"outputDirectory": "docs"` in `vercel.json`, which means:
|
|
18
|
+
- Vercel serves **all content from the `/docs/` directory**
|
|
19
|
+
- Serverless functions must be located at `/docs/api/` to be recognized
|
|
20
|
+
- Static files are also served from this same directory
|
|
21
|
+
|
|
22
|
+
### Original Structure (Before Fix)
|
|
23
|
+
|
|
24
|
+
Previously, there were **two separate API directories**:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/api/ # ❌ Not detected by Vercel
|
|
28
|
+
├── track-download-supabase.js # Serverless function (404 error)
|
|
29
|
+
└── package.json
|
|
30
|
+
|
|
31
|
+
/docs/api/ # ✅ Served correctly
|
|
32
|
+
└── agents.json # Static file
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Problem:** The serverless function in `/api/` was not being detected by Vercel because the `outputDirectory` was set to `docs`, causing 404 errors when trying to track downloads.
|
|
36
|
+
|
|
37
|
+
### Current Structure (After Fix)
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
/docs/api/ # ✅ Everything in one place
|
|
41
|
+
├── agents.json # Static file for queries
|
|
42
|
+
├── track-download-supabase.js # Serverless function for tracking
|
|
43
|
+
└── package.json # Dependencies
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Solution:** All API-related files (both static and serverless) are now in `/docs/api/`, ensuring Vercel can find and execute them correctly.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 📄 File Descriptions
|
|
51
|
+
|
|
52
|
+
### 1. `agents.json` (Static File)
|
|
53
|
+
- **Type:** Static JSON data
|
|
54
|
+
- **Purpose:** Contains the list of available agents for the frontend
|
|
55
|
+
- **Accessed by:** Frontend application via fetch/axios
|
|
56
|
+
- **URL:** `https://www.aitmpl.com/api/agents.json`
|
|
57
|
+
- **Size:** ~25KB
|
|
58
|
+
- **Updates:** Generated by `generate_components_json.py` script
|
|
59
|
+
|
|
60
|
+
**Usage:**
|
|
61
|
+
```javascript
|
|
62
|
+
fetch('https://www.aitmpl.com/api/agents.json')
|
|
63
|
+
.then(res => res.json())
|
|
64
|
+
.then(data => console.log(data));
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### 2. `track-download-supabase.js` (Serverless Function)
|
|
70
|
+
- **Type:** Vercel Serverless Function (Edge Function)
|
|
71
|
+
- **Purpose:** Tracks component downloads and stores them in Supabase
|
|
72
|
+
- **Runtime:** Node.js with ES Modules
|
|
73
|
+
- **HTTP Method:** POST
|
|
74
|
+
- **URL:** `https://www.aitmpl.com/api/track-download-supabase`
|
|
75
|
+
|
|
76
|
+
**Environment Variables Required:**
|
|
77
|
+
- `SUPABASE_URL` - Your Supabase project URL
|
|
78
|
+
- `SUPABASE_SERVICE_ROLE_KEY` - Supabase service role key (with write permissions)
|
|
79
|
+
|
|
80
|
+
**Request Payload:**
|
|
81
|
+
```json
|
|
82
|
+
{
|
|
83
|
+
"type": "agent",
|
|
84
|
+
"name": "frontend-developer",
|
|
85
|
+
"path": "agents/development/frontend-developer",
|
|
86
|
+
"category": "development",
|
|
87
|
+
"cliVersion": "1.20.2"
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Response (Success):**
|
|
92
|
+
```json
|
|
93
|
+
{
|
|
94
|
+
"success": true,
|
|
95
|
+
"message": "Download tracked successfully",
|
|
96
|
+
"data": {
|
|
97
|
+
"type": "agent",
|
|
98
|
+
"name": "frontend-developer",
|
|
99
|
+
"timestamp": "2025-10-12T13:00:00.000Z"
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Response (Error):**
|
|
105
|
+
```json
|
|
106
|
+
{
|
|
107
|
+
"error": "Internal server error",
|
|
108
|
+
"message": "Failed to track download"
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
**Database Tables:**
|
|
113
|
+
- `component_downloads` - Individual download records
|
|
114
|
+
- `download_stats` - Aggregated statistics
|
|
115
|
+
|
|
116
|
+
**Called by:** `cli-tool/src/tracking-service.js` when components are installed
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
### 3. `package.json` (Dependencies)
|
|
121
|
+
- **Type:** NPM package configuration
|
|
122
|
+
- **Purpose:** Defines dependencies for serverless functions
|
|
123
|
+
- **Key Dependencies:**
|
|
124
|
+
- `@supabase/supabase-js` - Supabase client library
|
|
125
|
+
- `@vercel/postgres` - PostgreSQL client for Vercel
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## 🚀 Deployment Process
|
|
130
|
+
|
|
131
|
+
### Prerequisites
|
|
132
|
+
1. Ensure environment variables are set in Vercel dashboard:
|
|
133
|
+
- `SUPABASE_URL`
|
|
134
|
+
- `SUPABASE_SERVICE_ROLE_KEY`
|
|
135
|
+
|
|
136
|
+
### Automatic Deployment
|
|
137
|
+
When you push to the `main` branch, Vercel automatically:
|
|
138
|
+
1. Detects changes in `/docs/`
|
|
139
|
+
2. Installs dependencies from `/docs/api/package.json`
|
|
140
|
+
3. Deploys serverless functions from `/docs/api/*.js`
|
|
141
|
+
4. Serves static files from `/docs/`
|
|
142
|
+
|
|
143
|
+
### Manual Deployment
|
|
144
|
+
```bash
|
|
145
|
+
# From project root
|
|
146
|
+
cd docs
|
|
147
|
+
vercel --prod
|
|
148
|
+
|
|
149
|
+
# Or using Vercel CLI
|
|
150
|
+
vercel deploy --prod
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Testing After Deployment
|
|
154
|
+
```bash
|
|
155
|
+
# Test serverless function
|
|
156
|
+
curl -X POST https://www.aitmpl.com/api/track-download-supabase \
|
|
157
|
+
-H "Content-Type: application/json" \
|
|
158
|
+
-d '{"type":"agent","name":"test","path":"test","category":"test","cliVersion":"1.0.0"}'
|
|
159
|
+
|
|
160
|
+
# Test static file
|
|
161
|
+
curl https://www.aitmpl.com/api/agents.json
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## 🔧 Troubleshooting
|
|
167
|
+
|
|
168
|
+
### Issue: 404 Error on API Endpoint
|
|
169
|
+
**Symptom:** `/api/track-download-supabase` returns 404
|
|
170
|
+
|
|
171
|
+
**Possible Causes:**
|
|
172
|
+
1. File not in `/docs/api/` directory
|
|
173
|
+
2. File has incorrect export format
|
|
174
|
+
3. Vercel environment variables not set
|
|
175
|
+
4. Deploy not completed
|
|
176
|
+
|
|
177
|
+
**Solution:**
|
|
178
|
+
```bash
|
|
179
|
+
# Verify file exists
|
|
180
|
+
ls -la docs/api/track-download-supabase.js
|
|
181
|
+
|
|
182
|
+
# Check Vercel logs
|
|
183
|
+
vercel logs [deployment-url]
|
|
184
|
+
|
|
185
|
+
# Redeploy
|
|
186
|
+
vercel --prod
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Issue: Function Times Out
|
|
190
|
+
**Symptom:** Request takes too long and times out
|
|
191
|
+
|
|
192
|
+
**Possible Causes:**
|
|
193
|
+
1. Supabase connection issues
|
|
194
|
+
2. Database performance problems
|
|
195
|
+
3. Network latency
|
|
196
|
+
|
|
197
|
+
**Solution:**
|
|
198
|
+
- Check Supabase status dashboard
|
|
199
|
+
- Verify database indexes exist
|
|
200
|
+
- Review function timeout settings in Vercel
|
|
201
|
+
|
|
202
|
+
### Issue: Data Not Saving
|
|
203
|
+
**Symptom:** API returns 200 but data doesn't appear in Supabase
|
|
204
|
+
|
|
205
|
+
**Possible Causes:**
|
|
206
|
+
1. Wrong environment variables
|
|
207
|
+
2. Insufficient permissions on service role key
|
|
208
|
+
3. Table schema mismatch
|
|
209
|
+
|
|
210
|
+
**Solution:**
|
|
211
|
+
```javascript
|
|
212
|
+
// Enable debug mode in tracking-service.js
|
|
213
|
+
process.env.CCT_DEBUG = 'true'
|
|
214
|
+
|
|
215
|
+
// Check logs in Vercel dashboard
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## 📊 Monitoring
|
|
221
|
+
|
|
222
|
+
### Vercel Analytics
|
|
223
|
+
- View function execution logs in Vercel dashboard
|
|
224
|
+
- Monitor function performance and errors
|
|
225
|
+
- Track deployment history
|
|
226
|
+
|
|
227
|
+
### Supabase Analytics
|
|
228
|
+
- View download statistics in Supabase dashboard
|
|
229
|
+
- Query `component_downloads` table directly
|
|
230
|
+
- Use `download_stats` for aggregated data
|
|
231
|
+
|
|
232
|
+
### CLI Debug Mode
|
|
233
|
+
Enable debug mode to see tracking requests:
|
|
234
|
+
```bash
|
|
235
|
+
export CCT_DEBUG=true
|
|
236
|
+
npx claude-code-templates@latest --agent frontend-developer
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## 🔄 Maintenance
|
|
242
|
+
|
|
243
|
+
### Updating the Serverless Function
|
|
244
|
+
1. Edit `/api/track-download-supabase.js` (source of truth)
|
|
245
|
+
2. Copy changes to `/docs/api/track-download-supabase.js`
|
|
246
|
+
3. Test locally if possible
|
|
247
|
+
4. Commit and push changes
|
|
248
|
+
5. Verify deployment in Vercel dashboard
|
|
249
|
+
|
|
250
|
+
### Updating Dependencies
|
|
251
|
+
1. Edit `/docs/api/package.json`
|
|
252
|
+
2. Commit changes
|
|
253
|
+
3. Vercel will automatically install on next deployment
|
|
254
|
+
|
|
255
|
+
### Syncing Files
|
|
256
|
+
If you update `/api/track-download-supabase.js`, remember to sync:
|
|
257
|
+
```bash
|
|
258
|
+
cp api/track-download-supabase.js docs/api/
|
|
259
|
+
cp api/package.json docs/api/
|
|
260
|
+
git add docs/api/
|
|
261
|
+
git commit -m "Sync API changes to docs/api"
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## 📝 Best Practices
|
|
267
|
+
|
|
268
|
+
1. **Keep Both Directories in Sync:** If you modify `/api/`, copy changes to `/docs/api/`
|
|
269
|
+
2. **Test Before Deploy:** Use debug mode to test tracking locally
|
|
270
|
+
3. **Monitor Logs:** Check Vercel logs after deployment
|
|
271
|
+
4. **Version Control:** Always commit both directories together
|
|
272
|
+
5. **Environment Variables:** Never commit sensitive keys
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
276
|
+
## 🔗 Related Files
|
|
277
|
+
|
|
278
|
+
- `/vercel.json` - Vercel configuration (defines `outputDirectory: "docs"`)
|
|
279
|
+
- `/cli-tool/src/tracking-service.js` - Client-side tracking implementation
|
|
280
|
+
- `/generate_components_json.py` - Generates `agents.json`
|
|
281
|
+
- `/api/` - Original API directory (keep as source of truth)
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
## 📞 Support
|
|
286
|
+
|
|
287
|
+
If you encounter issues with the API:
|
|
288
|
+
1. Check Vercel deployment logs
|
|
289
|
+
2. Verify environment variables in Vercel dashboard
|
|
290
|
+
3. Test endpoints manually with curl
|
|
291
|
+
4. Review Supabase logs for database errors
|
|
292
|
+
5. Enable debug mode in CLI for detailed tracking logs
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
**Last Updated:** October 12, 2025
|
|
297
|
+
**Maintained by:** Claude Code Templates Team
|