blockmine 1.20.0 → 1.22.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/.claude/agents/README.md +469 -0
- package/.claude/agents/auth-route-debugger.md +118 -0
- package/.claude/agents/auth-route-tester.md +93 -0
- package/.claude/agents/auto-error-resolver.md +97 -0
- package/.claude/agents/build-optimizer.md +236 -0
- package/.claude/agents/code-architecture-reviewer.md +83 -0
- package/.claude/agents/code-refactor-master.md +94 -0
- package/.claude/agents/cost-optimizer.md +134 -0
- package/.claude/agents/deployment-orchestrator.md +113 -0
- package/.claude/agents/documentation-architect.md +82 -0
- package/.claude/agents/frontend-error-fixer.md +77 -0
- package/.claude/agents/iac-code-generator.md +71 -0
- package/.claude/agents/incident-responder.md +346 -0
- package/.claude/agents/infrastructure-architect.md +31 -0
- package/.claude/agents/kubernetes-specialist.md +56 -0
- package/.claude/agents/migration-planner.md +181 -0
- package/.claude/agents/network-architect.md +196 -0
- package/.claude/agents/plan-reviewer.md +52 -0
- package/.claude/agents/refactor-planner.md +63 -0
- package/.claude/agents/security-scanner.md +102 -0
- package/.claude/agents/web-research-specialist.md +78 -0
- package/.claude/commands/cost-analysis.md +315 -0
- package/.claude/commands/dev-docs-update.md +55 -0
- package/.claude/commands/dev-docs.md +51 -0
- package/.claude/commands/incident-debug.md +247 -0
- package/.claude/commands/infra-plan.md +81 -0
- package/.claude/commands/migration-plan.md +478 -0
- package/.claude/commands/route-research-for-testing.md +37 -0
- package/.claude/commands/security-review.md +66 -0
- package/.claude/hooks/CONFIG.md +448 -0
- package/.claude/hooks/README.md +163 -0
- package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +226 -0
- package/.claude/hooks/WINDOWS_HOOKS_README.md +151 -0
- package/.claude/hooks/add-skill-activation-banners.ts +132 -0
- package/.claude/hooks/comprehensive-skill-test.ts +1315 -0
- package/.claude/hooks/error-handling-reminder.sh +12 -0
- package/.claude/hooks/error-handling-reminder.ts +222 -0
- package/.claude/hooks/k8s-manifest-validator.sh +56 -0
- package/.claude/hooks/package-lock.json +556 -0
- package/.claude/hooks/package.json +16 -0
- package/.claude/hooks/post-tool-use-tracker.ps1 +174 -0
- package/.claude/hooks/post-tool-use-tracker.sh +183 -0
- package/.claude/hooks/security-policy-check.sh +247 -0
- package/.claude/hooks/skill-activation-prompt.ps1 +10 -0
- package/.claude/hooks/skill-activation-prompt.sh +10 -0
- package/.claude/hooks/skill-activation-prompt.ts +141 -0
- package/.claude/hooks/stop-build-check-enhanced.sh +130 -0
- package/.claude/hooks/terraform-validator.sh +53 -0
- package/.claude/hooks/test-input.json +7 -0
- package/.claude/hooks/test-skill-activation.ts +427 -0
- package/.claude/hooks/trigger-build-resolver.sh +79 -0
- package/.claude/hooks/tsc-check.sh +173 -0
- package/.claude/hooks/tsconfig.json +19 -0
- package/.claude/settings.json +55 -0
- package/.claude/settings.local.json +28 -3
- package/.claude/skills/README.md +507 -0
- package/.claude/skills/api-engineering/SKILL.md +63 -0
- package/.claude/skills/api-engineering/resources/api-versioning.md +88 -0
- package/.claude/skills/api-engineering/resources/graphql-patterns.md +106 -0
- package/.claude/skills/api-engineering/resources/rate-limiting.md +118 -0
- package/.claude/skills/api-engineering/resources/rest-api-design.md +105 -0
- package/.claude/skills/backend-dev-guidelines/SKILL.md +306 -0
- package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
- package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
- package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
- package/.claude/skills/backend-dev-guidelines/resources/configuration.md +275 -0
- package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
- package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
- package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
- package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
- package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
- package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
- package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
- package/.claude/skills/budget-and-cost-management/SKILL.md +850 -0
- package/.claude/skills/build-engineering/SKILL.md +431 -0
- package/.claude/skills/build-engineering/resources/artifact-repositories.md +72 -0
- package/.claude/skills/build-engineering/resources/build-caching.md +96 -0
- package/.claude/skills/build-engineering/resources/build-pipelines.md +105 -0
- package/.claude/skills/build-engineering/resources/build-security.md +95 -0
- package/.claude/skills/build-engineering/resources/build-systems.md +389 -0
- package/.claude/skills/build-engineering/resources/compilation-optimization.md +201 -0
- package/.claude/skills/build-engineering/resources/dependency-management.md +73 -0
- package/.claude/skills/build-engineering/resources/monorepo-builds.md +110 -0
- package/.claude/skills/build-engineering/resources/performance-optimization.md +113 -0
- package/.claude/skills/build-engineering/resources/reproducible-builds.md +82 -0
- package/.claude/skills/cloud-engineering/SKILL.md +675 -0
- package/.claude/skills/cloud-engineering/resources/aws-patterns.md +742 -0
- package/.claude/skills/cloud-engineering/resources/azure-patterns.md +714 -0
- package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +987 -0
- package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +757 -0
- package/.claude/skills/cloud-engineering/resources/cloud-networking.md +1058 -0
- package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +1530 -0
- package/.claude/skills/cloud-engineering/resources/cloud-security.md +990 -0
- package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +758 -0
- package/.claude/skills/cloud-engineering/resources/migration-strategies.md +820 -0
- package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +670 -0
- package/.claude/skills/cloud-engineering/resources/oci-patterns.md +1198 -0
- package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +795 -0
- package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +966 -0
- package/.claude/skills/cybersecurity/SKILL.md +409 -0
- package/.claude/skills/cybersecurity/resources/security-architecture.md +266 -0
- package/.claude/skills/database-engineering/SKILL.md +61 -0
- package/.claude/skills/database-engineering/resources/backup-and-recovery.md +72 -0
- package/.claude/skills/database-engineering/resources/database-replication.md +63 -0
- package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +70 -0
- package/.claude/skills/database-engineering/resources/query-optimization.md +68 -0
- package/.claude/skills/devsecops/SKILL.md +374 -0
- package/.claude/skills/devsecops/resources/ci-cd-security.md +204 -0
- package/.claude/skills/devsecops/resources/compliance-automation.md +530 -0
- package/.claude/skills/devsecops/resources/compliance-frameworks.md +2322 -0
- package/.claude/skills/devsecops/resources/container-security.md +915 -0
- package/.claude/skills/devsecops/resources/cspm-integration.md +1440 -0
- package/.claude/skills/devsecops/resources/policy-enforcement.md +619 -0
- package/.claude/skills/devsecops/resources/secrets-management.md +755 -0
- package/.claude/skills/devsecops/resources/security-monitoring.md +146 -0
- package/.claude/skills/devsecops/resources/security-scanning.md +887 -0
- package/.claude/skills/devsecops/resources/security-testing.md +203 -0
- package/.claude/skills/devsecops/resources/supply-chain-security.md +518 -0
- package/.claude/skills/devsecops/resources/vulnerability-management.md +481 -0
- package/.claude/skills/devsecops/resources/zero-trust-architecture.md +177 -0
- package/.claude/skills/documentation-as-code/SKILL.md +323 -0
- package/.claude/skills/documentation-as-code/resources/api-documentation.md +90 -0
- package/.claude/skills/documentation-as-code/resources/changelog-management.md +79 -0
- package/.claude/skills/documentation-as-code/resources/diagram-generation.md +44 -0
- package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +99 -0
- package/.claude/skills/documentation-as-code/resources/documentation-automation.md +68 -0
- package/.claude/skills/documentation-as-code/resources/documentation-sites.md +79 -0
- package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +162 -0
- package/.claude/skills/documentation-as-code/resources/openapi-specification.md +77 -0
- package/.claude/skills/documentation-as-code/resources/readme-engineering.md +60 -0
- package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +202 -0
- package/.claude/skills/engineering-management/SKILL.md +356 -0
- package/.claude/skills/engineering-management/resources/career-ladders.md +609 -0
- package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +555 -0
- package/.claude/skills/engineering-management/resources/one-on-one-guides.md +609 -0
- package/.claude/skills/engineering-management/resources/resource-planning.md +557 -0
- package/.claude/skills/engineering-management/resources/team-organization-patterns.md +491 -0
- package/.claude/skills/engineering-management/resources/technical-interviews.md +474 -0
- package/.claude/skills/engineering-operations-management/SKILL.md +817 -0
- package/.claude/skills/error-tracking/SKILL.md +379 -0
- package/.claude/skills/frontend-dev-guidelines/SKILL.md +403 -0
- package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
- package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
- package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
- package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
- package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
- package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
- package/.claude/skills/frontend-dev-guidelines/resources/performance.md +406 -0
- package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
- package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
- package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
- package/.claude/skills/general-it-engineering/SKILL.md +393 -0
- package/.claude/skills/general-it-engineering/resources/asset-management.md +712 -0
- package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +817 -0
- package/.claude/skills/general-it-engineering/resources/business-continuity.md +786 -0
- package/.claude/skills/general-it-engineering/resources/change-management.md +715 -0
- package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +729 -0
- package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +738 -0
- package/.claude/skills/general-it-engineering/resources/incident-service-management.md +834 -0
- package/.claude/skills/general-it-engineering/resources/it-governance.md +753 -0
- package/.claude/skills/general-it-engineering/resources/itil-framework.md +503 -0
- package/.claude/skills/general-it-engineering/resources/service-management.md +669 -0
- package/.claude/skills/infrastructure-architecture/SKILL.md +328 -0
- package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +505 -0
- package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +528 -0
- package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +453 -0
- package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +773 -0
- package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +499 -0
- package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +501 -0
- package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +535 -0
- package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +512 -0
- package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +608 -0
- package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +562 -0
- package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +538 -0
- package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +489 -0
- package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +1000 -0
- package/.claude/skills/infrastructure-strategy/SKILL.md +924 -0
- package/.claude/skills/network-engineering/SKILL.md +385 -0
- package/.claude/skills/network-engineering/resources/dns-management.md +738 -0
- package/.claude/skills/network-engineering/resources/load-balancing.md +820 -0
- package/.claude/skills/network-engineering/resources/network-architecture.md +546 -0
- package/.claude/skills/network-engineering/resources/network-security.md +921 -0
- package/.claude/skills/network-engineering/resources/network-troubleshooting.md +749 -0
- package/.claude/skills/network-engineering/resources/routing-switching.md +373 -0
- package/.claude/skills/network-engineering/resources/sdn-networking.md +695 -0
- package/.claude/skills/network-engineering/resources/service-mesh-networking.md +777 -0
- package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +444 -0
- package/.claude/skills/network-engineering/resources/vpn-connectivity.md +672 -0
- package/.claude/skills/observability-engineering/SKILL.md +101 -0
- package/.claude/skills/observability-engineering/resources/apm-tools.md +97 -0
- package/.claude/skills/observability-engineering/resources/correlation-strategies.md +87 -0
- package/.claude/skills/observability-engineering/resources/distributed-tracing.md +98 -0
- package/.claude/skills/observability-engineering/resources/logs-aggregation.md +118 -0
- package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +141 -0
- package/.claude/skills/observability-engineering/resources/opentelemetry.md +110 -0
- package/.claude/skills/platform-engineering/SKILL.md +555 -0
- package/.claude/skills/platform-engineering/resources/architecture-overview.md +600 -0
- package/.claude/skills/platform-engineering/resources/container-orchestration.md +916 -0
- package/.claude/skills/platform-engineering/resources/cost-optimization.md +634 -0
- package/.claude/skills/platform-engineering/resources/developer-platforms.md +670 -0
- package/.claude/skills/platform-engineering/resources/gitops-automation.md +650 -0
- package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +778 -0
- package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +708 -0
- package/.claude/skills/platform-engineering/resources/multi-tenancy.md +602 -0
- package/.claude/skills/platform-engineering/resources/platform-security.md +711 -0
- package/.claude/skills/platform-engineering/resources/resource-management.md +592 -0
- package/.claude/skills/platform-engineering/resources/service-mesh.md +628 -0
- package/.claude/skills/release-engineering/SKILL.md +393 -0
- package/.claude/skills/release-engineering/resources/artifact-management.md +108 -0
- package/.claude/skills/release-engineering/resources/build-optimization.md +84 -0
- package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +411 -0
- package/.claude/skills/release-engineering/resources/deployment-strategies.md +197 -0
- package/.claude/skills/release-engineering/resources/pipeline-security.md +62 -0
- package/.claude/skills/release-engineering/resources/progressive-delivery.md +83 -0
- package/.claude/skills/release-engineering/resources/release-automation.md +68 -0
- package/.claude/skills/release-engineering/resources/release-orchestration.md +77 -0
- package/.claude/skills/release-engineering/resources/rollback-strategies.md +66 -0
- package/.claude/skills/release-engineering/resources/versioning-strategies.md +59 -0
- package/.claude/skills/route-tester/SKILL.md +392 -0
- package/.claude/skills/skill-developer/ADVANCED.md +197 -0
- package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/.claude/skills/skill-developer/SKILL.md +430 -0
- package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/.claude/skills/skill-rules.json +2940 -0
- package/.claude/skills/sre/SKILL.md +464 -0
- package/.claude/skills/sre/resources/alerting-best-practices.md +282 -0
- package/.claude/skills/sre/resources/capacity-planning.md +226 -0
- package/.claude/skills/sre/resources/chaos-engineering.md +193 -0
- package/.claude/skills/sre/resources/disaster-recovery.md +232 -0
- package/.claude/skills/sre/resources/incident-management.md +436 -0
- package/.claude/skills/sre/resources/observability-stack.md +240 -0
- package/.claude/skills/sre/resources/on-call-runbooks.md +167 -0
- package/.claude/skills/sre/resources/performance-optimization.md +108 -0
- package/.claude/skills/sre/resources/reliability-patterns.md +183 -0
- package/.claude/skills/sre/resources/slo-sli-sla.md +464 -0
- package/.claude/skills/sre/resources/toil-reduction.md +145 -0
- package/.claude/skills/systems-engineering/SKILL.md +648 -0
- package/.claude/skills/systems-engineering/resources/automation-patterns.md +771 -0
- package/.claude/skills/systems-engineering/resources/configuration-management.md +998 -0
- package/.claude/skills/systems-engineering/resources/linux-administration.md +672 -0
- package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +982 -0
- package/.claude/skills/systems-engineering/resources/performance-tuning.md +871 -0
- package/.claude/skills/systems-engineering/resources/powershell-scripting.md +482 -0
- package/.claude/skills/systems-engineering/resources/security-hardening.md +739 -0
- package/.claude/skills/systems-engineering/resources/shell-scripting.md +915 -0
- package/.claude/skills/systems-engineering/resources/storage-management.md +628 -0
- package/.claude/skills/systems-engineering/resources/system-monitoring.md +787 -0
- package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +753 -0
- package/.claude/skills/systems-engineering/resources/windows-administration.md +738 -0
- package/.claude/skills/technical-leadership/SKILL.md +728 -0
- package/CHANGELOG.md +90 -39
- package/README.md +94 -0
- package/backend/docs/SECRETS_DOCUMENTATION.md +327 -0
- package/backend/jest.config.js +59 -0
- package/backend/package-lock.json +6129 -0
- package/backend/package.json +16 -4
- package/backend/prisma/migrations/20251026104609_add_websocket_api/migration.sql +33 -0
- package/backend/prisma/schema.prisma +33 -0
- package/backend/src/__tests__/core/DependencyService.test.js +336 -0
- package/backend/src/__tests__/core/UserService.test.js +875 -0
- package/backend/src/__tests__/repositories/BaseRepository.test.js +146 -0
- package/backend/src/__tests__/repositories/BotRepository.test.js +118 -0
- package/backend/src/__tests__/repositories/CommandRepository.test.js +132 -0
- package/backend/src/__tests__/repositories/EventGraphRepository.test.js +93 -0
- package/backend/src/__tests__/repositories/GroupRepository.test.js +155 -0
- package/backend/src/__tests__/repositories/PermissionRepository.test.js +130 -0
- package/backend/src/__tests__/repositories/PluginRepository.test.js +107 -0
- package/backend/src/__tests__/repositories/ServerRepository.test.js +80 -0
- package/backend/src/__tests__/repositories/UserRepository.test.js +128 -0
- package/backend/src/__tests__/secretsFilter.test.js +425 -0
- package/backend/src/__tests__/services/BotLifecycleService.test.js +411 -0
- package/backend/src/__tests__/services/BotProcessManager.test.js +285 -0
- package/backend/src/__tests__/services/CacheManager.test.js +125 -0
- package/backend/src/__tests__/services/CommandExecutionService.test.js +460 -0
- package/backend/src/__tests__/services/ResourceMonitorService.test.js +207 -0
- package/backend/src/__tests__/services/TelemetryService.test.js +291 -0
- package/backend/src/__tests__/setup.js +25 -0
- package/backend/src/api/routes/apiKeys.js +181 -0
- package/backend/src/api/routes/bots.js +49 -7
- package/backend/src/api/routes/plugins.js +2 -1
- package/backend/src/api/routes/system.js +174 -0
- package/backend/src/container.js +82 -0
- package/backend/src/core/BotManager.js +142 -871
- package/backend/src/core/BotManager.old.js +1093 -0
- package/backend/src/core/BotProcess.js +1092 -850
- package/backend/src/core/BreakLoopSignal.js +8 -0
- package/backend/src/core/EventGraphManager.js +280 -193
- package/backend/src/core/GraphExecutionEngine.js +321 -928
- package/backend/src/core/MessageQueue.js +27 -6
- package/backend/src/core/NodeRegistry.js +37 -991
- package/backend/src/core/PluginManager.js +62 -12
- package/backend/src/core/PrismaService.js +32 -0
- package/backend/src/core/UserService.js +3 -3
- package/backend/src/core/__tests__/PrismaService.test.js +24 -0
- package/backend/src/core/commands/README.md +305 -0
- package/backend/src/core/commands/dev.js +13 -7
- package/backend/src/core/commands/ping.js +10 -4
- package/backend/src/core/commands/whois.js +63 -0
- package/backend/src/core/config/validation.js +27 -0
- package/backend/src/core/constants/graphTypes.js +21 -0
- package/backend/src/core/node-registries/actions.js +132 -0
- package/backend/src/core/node-registries/arrays.js +137 -0
- package/backend/src/core/node-registries/bot.js +23 -0
- package/backend/src/core/node-registries/data.js +290 -0
- package/backend/src/core/node-registries/debug.js +26 -0
- package/backend/src/core/node-registries/events.js +187 -0
- package/backend/src/core/node-registries/flow.js +139 -0
- package/backend/src/core/node-registries/logic.js +45 -0
- package/backend/src/core/node-registries/math.js +42 -0
- package/backend/src/core/node-registries/objects.js +98 -0
- package/backend/src/core/node-registries/strings.js +153 -0
- package/backend/src/core/node-registries/time.js +113 -0
- package/backend/src/core/node-registries/users.js +79 -0
- package/backend/src/core/nodes/actions/bot_look_at.js +36 -0
- package/backend/src/core/nodes/actions/bot_set_variable.js +32 -0
- package/backend/src/core/nodes/actions/http_request.js +98 -0
- package/backend/src/core/nodes/actions/send_log.js +28 -0
- package/backend/src/core/nodes/actions/send_message.js +32 -0
- package/backend/src/core/nodes/actions/send_websocket_response.js +33 -0
- package/backend/src/core/nodes/arrays/add_element.js +23 -0
- package/backend/src/core/nodes/arrays/contains.js +40 -0
- package/backend/src/core/nodes/arrays/find_index.js +23 -0
- package/backend/src/core/nodes/arrays/get_by_index.js +23 -0
- package/backend/src/core/nodes/arrays/get_next.js +35 -0
- package/backend/src/core/nodes/arrays/get_random_element.js +32 -0
- package/backend/src/core/nodes/arrays/remove_by_index.js +30 -0
- package/backend/src/core/nodes/bot/get_position.js +20 -0
- package/backend/src/core/nodes/data/array_literal.js +31 -0
- package/backend/src/core/nodes/data/boolean_literal.js +21 -0
- package/backend/src/core/nodes/data/cast.js +42 -0
- package/backend/src/core/nodes/data/datetime_literal.js +27 -0
- package/backend/src/core/nodes/data/entity_info.js +69 -0
- package/backend/src/core/nodes/data/get_argument.js +23 -0
- package/backend/src/core/nodes/data/get_bot_look.js +14 -0
- package/backend/src/core/nodes/data/get_entity_field.js +18 -0
- package/backend/src/core/nodes/data/get_nearby_entities.js +32 -0
- package/backend/src/core/nodes/data/get_nearby_players.js +64 -0
- package/backend/src/core/nodes/data/get_server_players.js +18 -0
- package/backend/src/core/nodes/data/get_user_field.js +40 -0
- package/backend/src/core/nodes/data/get_variable.js +23 -0
- package/backend/src/core/nodes/data/length.js +25 -0
- package/backend/src/core/nodes/data/make_object.js +31 -0
- package/backend/src/core/nodes/data/number_literal.js +21 -0
- package/backend/src/core/nodes/data/string_literal.js +34 -0
- package/backend/src/core/nodes/data/type_check.js +53 -0
- package/backend/src/core/nodes/debug/log.js +16 -0
- package/backend/src/core/nodes/flow/branch.js +15 -0
- package/backend/src/core/nodes/flow/break.js +14 -0
- package/backend/src/core/nodes/flow/delay.js +43 -0
- package/backend/src/core/nodes/flow/for_each.js +39 -0
- package/backend/src/core/nodes/flow/sequence.js +16 -0
- package/backend/src/core/nodes/flow/switch.js +47 -0
- package/backend/src/core/nodes/flow/while.js +64 -0
- package/backend/src/core/nodes/logic/__tests__/compare.test.js +83 -0
- package/backend/src/core/nodes/logic/compare.js +33 -0
- package/backend/src/core/nodes/logic/operation.js +35 -0
- package/backend/src/core/nodes/math/__tests__/operation.test.js +65 -0
- package/backend/src/core/nodes/math/operation.js +31 -0
- package/backend/src/core/nodes/math/random_number.js +43 -0
- package/backend/src/core/nodes/objects/create.js +40 -0
- package/backend/src/core/nodes/objects/delete.js +26 -0
- package/backend/src/core/nodes/objects/get.js +23 -0
- package/backend/src/core/nodes/objects/has_key.js +30 -0
- package/backend/src/core/nodes/objects/set.js +27 -0
- package/backend/src/core/nodes/strings/__tests__/concat.test.js +89 -0
- package/backend/src/core/nodes/strings/concat.js +27 -0
- package/backend/src/core/nodes/strings/contains.js +41 -0
- package/backend/src/core/nodes/strings/ends_with.js +43 -0
- package/backend/src/core/nodes/strings/equals.js +36 -0
- package/backend/src/core/nodes/strings/length.js +36 -0
- package/backend/src/core/nodes/strings/matches.js +39 -0
- package/backend/src/core/nodes/strings/split.js +37 -0
- package/backend/src/core/nodes/strings/starts_with.js +43 -0
- package/backend/src/core/nodes/time/__tests__/now.test.js +24 -0
- package/backend/src/core/nodes/time/add.js +33 -0
- package/backend/src/core/nodes/time/compare.js +35 -0
- package/backend/src/core/nodes/time/diff.js +29 -0
- package/backend/src/core/nodes/time/format.js +32 -0
- package/backend/src/core/nodes/time/now.js +18 -0
- package/backend/src/core/nodes/users/check_blacklist.js +37 -0
- package/backend/src/core/nodes/users/get_groups.js +36 -0
- package/backend/src/core/nodes/users/get_permissions.js +36 -0
- package/backend/src/core/nodes/users/set_blacklist.js +37 -0
- package/backend/src/core/services/BotLifecycleService.js +596 -0
- package/backend/src/core/services/BotProcessManager.js +163 -0
- package/backend/src/core/services/CacheManager.js +111 -0
- package/backend/src/core/services/CommandExecutionService.js +351 -0
- package/backend/src/core/services/ResourceMonitorService.js +90 -0
- package/backend/src/core/services/TelemetryService.js +124 -0
- package/backend/src/core/services/ValidationService.js +132 -0
- package/backend/src/core/services/__tests__/ValidationService.test.js +148 -0
- package/backend/src/core/services.js +20 -5
- package/backend/src/core/system/CommandContext.js +84 -0
- package/backend/src/core/system/Transport.js +78 -0
- package/backend/src/core/utils/__tests__/jsonParser.test.js +44 -0
- package/backend/src/core/utils/jsonParser.js +18 -0
- package/backend/src/core/utils/secretsFilter.js +262 -0
- package/backend/src/core/utils/variableParser.js +89 -0
- package/backend/src/core/validation/__tests__/nodeSchemas.test.js +175 -0
- package/backend/src/core/validation/nodeSchemas.js +112 -0
- package/backend/src/lib/prisma.js +2 -4
- package/backend/src/real-time/botApi/handlers/commandHandlers.js +28 -0
- package/backend/src/real-time/botApi/handlers/graphHandlers.js +99 -0
- package/backend/src/real-time/botApi/handlers/graphWebSocketHandlers.js +147 -0
- package/backend/src/real-time/botApi/handlers/index.js +43 -0
- package/backend/src/real-time/botApi/handlers/messageHandlers.js +66 -0
- package/backend/src/real-time/botApi/handlers/statusHandlers.js +17 -0
- package/backend/src/real-time/botApi/handlers/userHandlers.js +141 -0
- package/backend/src/real-time/botApi/index.js +40 -0
- package/backend/src/real-time/botApi/middleware.js +79 -0
- package/backend/src/real-time/botApi/utils.js +54 -0
- package/backend/src/real-time/socketHandler.js +6 -2
- package/backend/src/repositories/BaseRepository.js +43 -0
- package/backend/src/repositories/BotRepository.js +42 -0
- package/backend/src/repositories/CommandRepository.js +53 -0
- package/backend/src/repositories/EventGraphRepository.js +40 -0
- package/backend/src/repositories/GroupRepository.js +69 -0
- package/backend/src/repositories/PermissionRepository.js +48 -0
- package/backend/src/repositories/PluginRepository.js +42 -0
- package/backend/src/repositories/ServerRepository.js +27 -0
- package/backend/src/repositories/UserRepository.js +48 -0
- package/backend/src/server.js +3 -0
- package/backend/src/test-refactor.js +85 -0
- package/frontend/dist/assets/index-CfTo92bP.css +1 -0
- package/frontend/dist/assets/index-CiFD5X9Z.js +8344 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/package.json +1 -5
- package/package.json +2 -1
- package/frontend/dist/assets/index-BFd7YoAj.css +0 -1
- package/frontend/dist/assets/index-CMMutadc.js +0 -8352
- package/nul +0 -0
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
# Documentation as Code
|
|
2
|
+
|
|
3
|
+
Comprehensive guide to technical writing, docs-as-code practices, API documentation, diagram generation, and documentation automation.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Enable teams to create, maintain, and publish high-quality technical documentation using version control, code review, and CI/CD practices.
|
|
8
|
+
|
|
9
|
+
## When to Use This Skill
|
|
10
|
+
|
|
11
|
+
Automatically activates when working on:
|
|
12
|
+
- README files and project documentation
|
|
13
|
+
- API documentation (OpenAPI/Swagger)
|
|
14
|
+
- Architecture diagrams (PlantUML, Mermaid)
|
|
15
|
+
- Documentation sites (Docusaurus, MkDocs)
|
|
16
|
+
- Technical writing and style guides
|
|
17
|
+
- Documentation automation and testing
|
|
18
|
+
- Changelog management
|
|
19
|
+
- Developer onboarding docs
|
|
20
|
+
|
|
21
|
+
## Quick Start Checklist
|
|
22
|
+
|
|
23
|
+
When creating documentation:
|
|
24
|
+
|
|
25
|
+
- [ ] Write in Markdown (version-controllable)
|
|
26
|
+
- [ ] Use clear, concise language
|
|
27
|
+
- [ ] Include code examples
|
|
28
|
+
- [ ] Add diagrams where helpful
|
|
29
|
+
- [ ] Set up docs-as-code workflow (Git + CI/CD)
|
|
30
|
+
- [ ] Enable automated link checking
|
|
31
|
+
- [ ] Configure spell checking
|
|
32
|
+
- [ ] Create table of contents
|
|
33
|
+
- [ ] Test code examples
|
|
34
|
+
- [ ] Set up documentation site (if needed)
|
|
35
|
+
|
|
36
|
+
## Core Concepts
|
|
37
|
+
|
|
38
|
+
### Docs-as-Code Philosophy
|
|
39
|
+
|
|
40
|
+
**Treat documentation like code:**
|
|
41
|
+
```
|
|
42
|
+
Version Control → Git (PRs, reviews, history)
|
|
43
|
+
Review Process → Pull requests with feedback
|
|
44
|
+
CI/CD → Build, test, deploy automatically
|
|
45
|
+
Testing → Link checking, spell checking, code validation
|
|
46
|
+
Publishing → Automated deployment to docs site
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Documentation Types
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
README: Project overview, quick start
|
|
53
|
+
API Docs: REST, GraphQL endpoint documentation
|
|
54
|
+
Architecture: System design, diagrams, ADRs
|
|
55
|
+
Runbooks: Operational procedures
|
|
56
|
+
Guides: How-to tutorials, best practices
|
|
57
|
+
Reference: API reference, configuration options
|
|
58
|
+
Changelog: Version history, release notes
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Common Patterns
|
|
62
|
+
|
|
63
|
+
### Pattern 1: Project README Structure
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
# Project Name
|
|
67
|
+
|
|
68
|
+
Brief description (1-2 sentences)
|
|
69
|
+
|
|
70
|
+
## Features
|
|
71
|
+
|
|
72
|
+
- Feature 1
|
|
73
|
+
- Feature 2
|
|
74
|
+
- Feature 3
|
|
75
|
+
|
|
76
|
+
## Quick Start
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npm install
|
|
80
|
+
npm run dev
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Documentation
|
|
84
|
+
|
|
85
|
+
- [API Reference](docs/api.md)
|
|
86
|
+
- [Architecture](docs/architecture.md)
|
|
87
|
+
- [Contributing](CONTRIBUTING.md)
|
|
88
|
+
|
|
89
|
+
## Installation
|
|
90
|
+
|
|
91
|
+
Detailed installation instructions
|
|
92
|
+
|
|
93
|
+
## Usage
|
|
94
|
+
|
|
95
|
+
Code examples
|
|
96
|
+
|
|
97
|
+
## Configuration
|
|
98
|
+
|
|
99
|
+
Environment variables, config files
|
|
100
|
+
|
|
101
|
+
## Contributing
|
|
102
|
+
|
|
103
|
+
How to contribute
|
|
104
|
+
|
|
105
|
+
## License
|
|
106
|
+
|
|
107
|
+
MIT
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
112
|
+
🎯 SKILL ACTIVATED: documentation-as-code
|
|
113
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
### Pattern 2: API Documentation (OpenAPI)
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
# openapi.yaml
|
|
120
|
+
openapi: 3.0.0
|
|
121
|
+
info:
|
|
122
|
+
title: User API
|
|
123
|
+
version: 1.0.0
|
|
124
|
+
|
|
125
|
+
paths:
|
|
126
|
+
/users:
|
|
127
|
+
get:
|
|
128
|
+
summary: List all users
|
|
129
|
+
parameters:
|
|
130
|
+
- name: page
|
|
131
|
+
in: query
|
|
132
|
+
schema:
|
|
133
|
+
type: integer
|
|
134
|
+
responses:
|
|
135
|
+
'200':
|
|
136
|
+
description: Successful response
|
|
137
|
+
content:
|
|
138
|
+
application/json:
|
|
139
|
+
schema:
|
|
140
|
+
type: array
|
|
141
|
+
items:
|
|
142
|
+
$ref: '#/components/schemas/User'
|
|
143
|
+
|
|
144
|
+
components:
|
|
145
|
+
schemas:
|
|
146
|
+
User:
|
|
147
|
+
type: object
|
|
148
|
+
properties:
|
|
149
|
+
id:
|
|
150
|
+
type: string
|
|
151
|
+
name:
|
|
152
|
+
type: string
|
|
153
|
+
email:
|
|
154
|
+
type: string
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
### Pattern 3: Diagrams as Code
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
PlantUML:
|
|
163
|
+
@startuml
|
|
164
|
+
User -> API: Request
|
|
165
|
+
API -> Database: Query
|
|
166
|
+
Database -> API: Result
|
|
167
|
+
API -> User: Response
|
|
168
|
+
@enduml
|
|
169
|
+
|
|
170
|
+
Mermaid:
|
|
171
|
+
```mermaid
|
|
172
|
+
graph LR
|
|
173
|
+
A[User] --> B[API Gateway]
|
|
174
|
+
B --> C[Service 1]
|
|
175
|
+
B --> D[Service 2]
|
|
176
|
+
```
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Resource Files
|
|
180
|
+
|
|
181
|
+
For detailed guidance on specific topics, see:
|
|
182
|
+
|
|
183
|
+
### Technical Writing
|
|
184
|
+
- **[technical-writing-guide.md](resources/technical-writing-guide.md)** - Structure, clarity, examples, audience targeting, style guidelines
|
|
185
|
+
- **[markdown-best-practices.md](resources/markdown-best-practices.md)** - GFM, formatting, linking, images, tables, code blocks
|
|
186
|
+
|
|
187
|
+
### API Documentation
|
|
188
|
+
- **[api-documentation.md](resources/api-documentation.md)** - OpenAPI/Swagger, REST docs, GraphQL docs, API design documentation
|
|
189
|
+
- **[openapi-specification.md](resources/openapi-specification.md)** - OpenAPI 3.0 spec, schemas, paths, components, examples
|
|
190
|
+
|
|
191
|
+
### Diagrams & Visualization
|
|
192
|
+
- **[diagram-generation.md](resources/diagram-generation.md)** - PlantUML, Mermaid, diagrams.net, C4 model, architecture diagrams
|
|
193
|
+
- **[documentation-sites.md](resources/documentation-sites.md)** - Docusaurus, MkDocs, GitBook, VuePress, Astro Starlight
|
|
194
|
+
|
|
195
|
+
### Automation & Testing
|
|
196
|
+
- **[documentation-automation.md](resources/documentation-automation.md)** - Auto-generation, linting, link checking, CI/CD pipelines
|
|
197
|
+
- **[readme-engineering.md](resources/readme-engineering.md)** - Project READMEs, structure, badges, quick starts, examples
|
|
198
|
+
|
|
199
|
+
### Version Control
|
|
200
|
+
- **[changelog-management.md](resources/changelog-management.md)** - Keep a Changelog, semantic versioning, release notes, automation
|
|
201
|
+
- **[docs-as-code-workflow.md](resources/docs-as-code-workflow.md)** - Git workflow, PR reviews, versioning, deployment strategies
|
|
202
|
+
|
|
203
|
+
## Best Practices
|
|
204
|
+
|
|
205
|
+
### 1. Write for Your Audience
|
|
206
|
+
|
|
207
|
+
**Developer documentation:**
|
|
208
|
+
- Technical, concise
|
|
209
|
+
- Code examples
|
|
210
|
+
- API references
|
|
211
|
+
|
|
212
|
+
**User documentation:**
|
|
213
|
+
- Less technical
|
|
214
|
+
- Step-by-step guides
|
|
215
|
+
- Screenshots
|
|
216
|
+
|
|
217
|
+
### 2. Show, Don't Just Tell
|
|
218
|
+
|
|
219
|
+
```markdown
|
|
220
|
+
# ❌ Bad
|
|
221
|
+
The API returns user data.
|
|
222
|
+
|
|
223
|
+
# ✅ Good
|
|
224
|
+
The API returns user data in JSON format:
|
|
225
|
+
|
|
226
|
+
```json
|
|
227
|
+
{
|
|
228
|
+
"id": "123",
|
|
229
|
+
"name": "John Doe",
|
|
230
|
+
"email": "john@example.com"
|
|
231
|
+
}
|
|
232
|
+
```
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### 3. Keep It Up to Date
|
|
236
|
+
|
|
237
|
+
- Documentation updates in same PR as code changes
|
|
238
|
+
- Automated link checking
|
|
239
|
+
- Regular documentation reviews
|
|
240
|
+
- Mark deprecated features clearly
|
|
241
|
+
|
|
242
|
+
### 4. Use Version Control
|
|
243
|
+
|
|
244
|
+
- All docs in Git
|
|
245
|
+
- Pull request reviews
|
|
246
|
+
- Track changes over time
|
|
247
|
+
- Easy rollback if needed
|
|
248
|
+
|
|
249
|
+
### 5. Automate Everything
|
|
250
|
+
|
|
251
|
+
- Build docs automatically (CI/CD)
|
|
252
|
+
- Check links (broken link detection)
|
|
253
|
+
- Spell check
|
|
254
|
+
- Deploy on merge to main
|
|
255
|
+
|
|
256
|
+
### 6. Make It Searchable
|
|
257
|
+
|
|
258
|
+
- Use docs site with search (Algolia, etc.)
|
|
259
|
+
- Clear headings and structure
|
|
260
|
+
- Table of contents
|
|
261
|
+
- Good SEO (if public)
|
|
262
|
+
|
|
263
|
+
## Anti-Patterns to Avoid
|
|
264
|
+
|
|
265
|
+
❌ Documentation in Word/Google Docs (not version controlled)
|
|
266
|
+
❌ Outdated code examples
|
|
267
|
+
❌ No diagrams (hard to understand architecture)
|
|
268
|
+
❌ Inconsistent formatting
|
|
269
|
+
❌ No table of contents (large docs)
|
|
270
|
+
❌ Broken links (not tested)
|
|
271
|
+
❌ Jargon without explanation
|
|
272
|
+
❌ Missing quick start guide
|
|
273
|
+
|
|
274
|
+
## Common Tasks
|
|
275
|
+
|
|
276
|
+
### Task: Create OpenAPI Documentation
|
|
277
|
+
|
|
278
|
+
1. Define API spec in `openapi.yaml`
|
|
279
|
+
2. Add schemas, paths, responses
|
|
280
|
+
3. Generate docs with Swagger UI or Redoc
|
|
281
|
+
4. Host on docs site
|
|
282
|
+
5. Keep in sync with code (codegen or validation)
|
|
283
|
+
|
|
284
|
+
### Task: Set Up Documentation Site
|
|
285
|
+
|
|
286
|
+
1. Choose tool (Docusaurus, MkDocs, etc.)
|
|
287
|
+
2. Initialize site structure
|
|
288
|
+
3. Write documentation in Markdown
|
|
289
|
+
4. Configure navigation/sidebar
|
|
290
|
+
5. Set up CI/CD (deploy on push to main)
|
|
291
|
+
6. Add search (Algolia)
|
|
292
|
+
|
|
293
|
+
### Task: Generate Architecture Diagram
|
|
294
|
+
|
|
295
|
+
1. Choose tool (PlantUML, Mermaid, draw.io)
|
|
296
|
+
2. Create diagram as code
|
|
297
|
+
3. Commit to Git (version controlled)
|
|
298
|
+
4. Auto-generate PNG/SVG in CI
|
|
299
|
+
5. Embed in documentation
|
|
300
|
+
|
|
301
|
+
## Integration Points
|
|
302
|
+
|
|
303
|
+
This skill integrates with:
|
|
304
|
+
- **skill-developer**: Documenting skills
|
|
305
|
+
- **backend-dev-guidelines**: API documentation
|
|
306
|
+
- **frontend-dev-guidelines**: Component documentation
|
|
307
|
+
- **infrastructure-architecture**: Architecture diagrams and docs
|
|
308
|
+
- All skills: Every project needs documentation
|
|
309
|
+
|
|
310
|
+
## Triggers and Activation
|
|
311
|
+
|
|
312
|
+
This skill activates when you:
|
|
313
|
+
- Edit README or .md files
|
|
314
|
+
- Work with OpenAPI/Swagger specs
|
|
315
|
+
- Create architecture diagrams
|
|
316
|
+
- Set up documentation sites
|
|
317
|
+
- Write technical content
|
|
318
|
+
|
|
319
|
+
---
|
|
320
|
+
|
|
321
|
+
**Total Resources:** 10 detailed guides covering all aspects of documentation as code
|
|
322
|
+
**Focus:** Version control, automation, API docs, diagrams, technical writing
|
|
323
|
+
**Maintained by:** Documentation team based on industry best practices
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# API Documentation
|
|
2
|
+
|
|
3
|
+
Guide to documenting REST APIs, GraphQL APIs, and generating interactive API documentation using OpenAPI/Swagger.
|
|
4
|
+
|
|
5
|
+
## REST API Documentation Template
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
## POST /api/users
|
|
9
|
+
|
|
10
|
+
Create a new user account.
|
|
11
|
+
|
|
12
|
+
### Authentication
|
|
13
|
+
Requires API key:
|
|
14
|
+
```
|
|
15
|
+
Authorization: Bearer <token>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
### Request
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"email": "user@example.com",
|
|
22
|
+
"name": "John Doe"
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Response (201)
|
|
27
|
+
```json
|
|
28
|
+
{
|
|
29
|
+
"id": "usr_123",
|
|
30
|
+
"email": "user@example.com",
|
|
31
|
+
"name": "John Doe"
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Errors
|
|
36
|
+
- 400: Invalid input
|
|
37
|
+
- 401: Unauthorized
|
|
38
|
+
- 409: Email exists
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## OpenAPI Example
|
|
42
|
+
|
|
43
|
+
```yaml
|
|
44
|
+
openapi: 3.0.0
|
|
45
|
+
info:
|
|
46
|
+
title: API
|
|
47
|
+
version: 1.0.0
|
|
48
|
+
|
|
49
|
+
paths:
|
|
50
|
+
/users:
|
|
51
|
+
post:
|
|
52
|
+
summary: Create user
|
|
53
|
+
requestBody:
|
|
54
|
+
content:
|
|
55
|
+
application/json:
|
|
56
|
+
schema:
|
|
57
|
+
$ref: '#/components/schemas/UserInput'
|
|
58
|
+
responses:
|
|
59
|
+
'201':
|
|
60
|
+
description: Created
|
|
61
|
+
content:
|
|
62
|
+
application/json:
|
|
63
|
+
schema:
|
|
64
|
+
$ref: '#/components/schemas/User'
|
|
65
|
+
|
|
66
|
+
components:
|
|
67
|
+
schemas:
|
|
68
|
+
User:
|
|
69
|
+
type: object
|
|
70
|
+
properties:
|
|
71
|
+
id:
|
|
72
|
+
type: string
|
|
73
|
+
email:
|
|
74
|
+
type: string
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Best Practices
|
|
78
|
+
|
|
79
|
+
✅ Complete request/response examples
|
|
80
|
+
✅ Document all error codes
|
|
81
|
+
✅ Show authentication requirements
|
|
82
|
+
✅ Include curl examples
|
|
83
|
+
✅ Keep spec synced with code
|
|
84
|
+
✅ Use Swagger UI for interactive docs
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
**Related Resources:**
|
|
89
|
+
- openapi-specification.md - Complete OpenAPI guide
|
|
90
|
+
- technical-writing-guide.md - Writing style
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Changelog Management
|
|
2
|
+
|
|
3
|
+
Guide to maintaining changelogs following Keep a Changelog format.
|
|
4
|
+
|
|
5
|
+
## Keep a Changelog Format
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
# Changelog
|
|
9
|
+
|
|
10
|
+
All notable changes to this project will be documented in this file.
|
|
11
|
+
|
|
12
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
13
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
14
|
+
|
|
15
|
+
## [Unreleased]
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- New feature X
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
- Updated feature Y
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
- Bug fix Z
|
|
25
|
+
|
|
26
|
+
## [1.2.0] - 2024-01-15
|
|
27
|
+
|
|
28
|
+
### Added
|
|
29
|
+
- API endpoint for user management
|
|
30
|
+
- JWT authentication
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
- Improved error handling
|
|
34
|
+
|
|
35
|
+
### Deprecated
|
|
36
|
+
- Old authentication method (use JWT)
|
|
37
|
+
|
|
38
|
+
### Removed
|
|
39
|
+
- Support for Node.js 14
|
|
40
|
+
|
|
41
|
+
### Fixed
|
|
42
|
+
- Memory leak in worker process
|
|
43
|
+
|
|
44
|
+
### Security
|
|
45
|
+
- Updated dependencies to fix CVE-2024-0001
|
|
46
|
+
|
|
47
|
+
## [1.1.0] - 2023-12-01
|
|
48
|
+
...
|
|
49
|
+
|
|
50
|
+
## [1.0.0] - 2023-11-01
|
|
51
|
+
- Initial release
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Semantic Versioning
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
MAJOR.MINOR.PATCH
|
|
58
|
+
|
|
59
|
+
MAJOR: Breaking changes
|
|
60
|
+
MINOR: New features (backward-compatible)
|
|
61
|
+
PATCH: Bug fixes (backward-compatible)
|
|
62
|
+
|
|
63
|
+
Examples:
|
|
64
|
+
1.0.0 → 1.0.1: Bug fix
|
|
65
|
+
1.0.1 → 1.1.0: New feature
|
|
66
|
+
1.1.0 → 2.0.0: Breaking change
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Automation
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Generate changelog from Git commits
|
|
73
|
+
npx conventional-changelog-cli -p angular -i CHANGELOG.md -s
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
**Related Resources:**
|
|
79
|
+
- docs-as-code-workflow.md - Versioning workflow
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Diagram Generation
|
|
2
|
+
|
|
3
|
+
Guide to creating diagrams as code using PlantUML, Mermaid, and other tools.
|
|
4
|
+
|
|
5
|
+
## Mermaid (GitHub-native)
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
```mermaid
|
|
9
|
+
graph LR
|
|
10
|
+
A[User] --> B[API]
|
|
11
|
+
B --> C[Database]
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
```mermaid
|
|
15
|
+
sequenceDiagram
|
|
16
|
+
User->>API: Request
|
|
17
|
+
API->>DB: Query
|
|
18
|
+
DB-->>API: Result
|
|
19
|
+
API-->>User: Response
|
|
20
|
+
```
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## PlantUML
|
|
24
|
+
|
|
25
|
+
```plantuml
|
|
26
|
+
@startuml
|
|
27
|
+
User -> API: Request
|
|
28
|
+
API -> Database: Query
|
|
29
|
+
Database -> API: Result
|
|
30
|
+
API -> User: Response
|
|
31
|
+
@enduml
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Best Practices
|
|
35
|
+
|
|
36
|
+
✅ Version control diagrams as code
|
|
37
|
+
✅ Use consistent notation
|
|
38
|
+
✅ Keep diagrams simple
|
|
39
|
+
✅ Auto-generate images in CI
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
**Related Resources:**
|
|
44
|
+
- technical-writing-guide.md - When to use diagrams
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# Docs-as-Code Workflow
|
|
2
|
+
|
|
3
|
+
Complete workflow for treating documentation like code with Git, reviews, and CI/CD.
|
|
4
|
+
|
|
5
|
+
## Git Workflow
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Create documentation branch
|
|
9
|
+
git checkout -b docs/add-api-guide
|
|
10
|
+
|
|
11
|
+
# Write documentation
|
|
12
|
+
vim docs/api-guide.md
|
|
13
|
+
|
|
14
|
+
# Commit with clear message
|
|
15
|
+
git add docs/api-guide.md
|
|
16
|
+
git commit -m "docs: Add API authentication guide"
|
|
17
|
+
|
|
18
|
+
# Push and create PR
|
|
19
|
+
git push origin docs/add-api-guide
|
|
20
|
+
gh pr create --title "Add API authentication guide"
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Pull Request Review
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
## Documentation PR Checklist
|
|
27
|
+
|
|
28
|
+
- [ ] Spelling and grammar checked
|
|
29
|
+
- [ ] Code examples tested
|
|
30
|
+
- [ ] Links verified (no broken links)
|
|
31
|
+
- [ ] Screenshots up-to-date (if any)
|
|
32
|
+
- [ ] TOC updated
|
|
33
|
+
- [ ] Related docs updated
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## CI/CD Pipeline
|
|
37
|
+
|
|
38
|
+
```yaml
|
|
39
|
+
# .github/workflows/docs.yml
|
|
40
|
+
name: Documentation
|
|
41
|
+
on: [push, pull_request]
|
|
42
|
+
|
|
43
|
+
jobs:
|
|
44
|
+
lint:
|
|
45
|
+
runs-on: ubuntu-latest
|
|
46
|
+
steps:
|
|
47
|
+
- uses: actions/checkout@v3
|
|
48
|
+
- name: Lint Markdown
|
|
49
|
+
run: npx markdownlint-cli '**/*.md'
|
|
50
|
+
|
|
51
|
+
link-check:
|
|
52
|
+
runs-on: ubuntu-latest
|
|
53
|
+
steps:
|
|
54
|
+
- uses: actions/checkout@v3
|
|
55
|
+
- name: Check Links
|
|
56
|
+
uses: gaurav-nelson/github-action-markdown-link-check@v1
|
|
57
|
+
|
|
58
|
+
build:
|
|
59
|
+
runs-on: ubuntu-latest
|
|
60
|
+
steps:
|
|
61
|
+
- uses: actions/checkout@v3
|
|
62
|
+
- name: Build Docs Site
|
|
63
|
+
run: |
|
|
64
|
+
npm install
|
|
65
|
+
npm run build
|
|
66
|
+
- name: Deploy to GitHub Pages
|
|
67
|
+
if: github.ref == 'refs/heads/main'
|
|
68
|
+
uses: peaceiris/actions-gh-pages@v3
|
|
69
|
+
with:
|
|
70
|
+
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
71
|
+
publish_dir: ./build
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Versioning
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
docs/
|
|
78
|
+
v1.0/
|
|
79
|
+
getting-started.md
|
|
80
|
+
api-reference.md
|
|
81
|
+
v2.0/
|
|
82
|
+
getting-started.md
|
|
83
|
+
api-reference.md
|
|
84
|
+
latest/ → symlink to v2.0
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Best Practices
|
|
88
|
+
|
|
89
|
+
✅ Update docs in same PR as code changes
|
|
90
|
+
✅ Require docs review before merge
|
|
91
|
+
✅ Auto-deploy docs on main branch
|
|
92
|
+
✅ Version docs alongside code
|
|
93
|
+
✅ Use branch protection for docs/
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
**Related Resources:**
|
|
98
|
+
- documentation-automation.md - Automation tools
|
|
99
|
+
- changelog-management.md - Version tracking
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Documentation Automation
|
|
2
|
+
|
|
3
|
+
Guide to automating documentation workflows with linting, link checking, and CI/CD.
|
|
4
|
+
|
|
5
|
+
## Link Checking
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
# .github/workflows/link-check.yml
|
|
9
|
+
name: Check Links
|
|
10
|
+
on: [pull_request]
|
|
11
|
+
jobs:
|
|
12
|
+
link-check:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v3
|
|
16
|
+
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
|
17
|
+
with:
|
|
18
|
+
config-file: '.markdown-link-check.json'
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
// .markdown-link-check.json
|
|
23
|
+
{
|
|
24
|
+
"ignorePatterns": [
|
|
25
|
+
{ "pattern": "^http://localhost" }
|
|
26
|
+
],
|
|
27
|
+
"timeout": "20s",
|
|
28
|
+
"retryOn429": true
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Markdown Linting
|
|
33
|
+
|
|
34
|
+
```yaml
|
|
35
|
+
# .markdownlint.json
|
|
36
|
+
{
|
|
37
|
+
"default": true,
|
|
38
|
+
"MD013": false,
|
|
39
|
+
"MD033": false
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npx markdownlint-cli '**/*.md'
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Spell Checking
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npx cspell "docs/**/*.md"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Auto-Generate Docs
|
|
54
|
+
|
|
55
|
+
```typescript
|
|
56
|
+
// Generate API docs from code
|
|
57
|
+
import { generateDocs } from 'typedoc';
|
|
58
|
+
|
|
59
|
+
generateDocs({
|
|
60
|
+
entryPoints: ['./src/index.ts'],
|
|
61
|
+
out: './docs/api'
|
|
62
|
+
});
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
**Related Resources:**
|
|
68
|
+
- docs-as-code-workflow.md - Complete workflow
|