ebbdb42c05
Set up TypeDoc to auto-generate comprehensive API reference documentation from TypeScript source code. Changes: - Installed typedoc and typedoc-plugin-markdown (v0.2.0 plugins) - Created typedoc.json configuration with 9 entry points - Added docs:api and docs:watch npm scripts - Fixed test file imports (validateNamespace → isValidNamespace) - Updated tsconfig.json to exclude test files from compilation - Generated markdown API documentation in docs/api-reference/generated/ Generated API documentation: - 9 modules documented (lib/, hooks/, types/) - lib/crypto - 14 encryption/certificate functions - lib/controller - 5 Kubernetes API functions - lib/validators - 6 validation functions - lib/retry - Exponential backoff utilities - lib/rbac - RBAC permission checking - types - Result types, branded types, interfaces - hooks/useSealedSecretEncryption - Encryption React hook - hooks/usePermissions - RBAC React hooks - hooks/useControllerHealth - Health monitoring hook Benefits: - Auto-generated from TypeScript source (stays in sync) - Markdown format for easy integration - Type signatures and JSDoc included - Function parameters and return types documented - Links between related types and functions Phase 2 deliverables (2-3 days estimated, completed in 1 session): ✅ TypeDoc installed and configured ✅ Entry points identified for all core modules ✅ API documentation generated (9 modules, 40+ functions) ✅ npm scripts added for docs generation ✅ Test files excluded from documentation Next: Phase 3 - User tutorials and guides Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
27 lines
746 B
JSON
27 lines
746 B
JSON
{
|
|
"$schema": "https://typedoc.org/schema.json",
|
|
"entryPoints": [
|
|
"src/lib/crypto.ts",
|
|
"src/lib/controller.ts",
|
|
"src/lib/validators.ts",
|
|
"src/lib/retry.ts",
|
|
"src/lib/rbac.ts",
|
|
"src/types.ts",
|
|
"src/hooks/useSealedSecretEncryption.ts",
|
|
"src/hooks/usePermissions.ts",
|
|
"src/hooks/useControllerHealth.ts"
|
|
],
|
|
"out": "../docs/api-reference/generated",
|
|
"name": "Headlamp Sealed Secrets API",
|
|
"exclude": ["**/*.test.ts", "**/*.test.tsx", "**/test-setup.ts"],
|
|
"excludePrivate": true,
|
|
"excludeProtected": true,
|
|
"excludeExternals": true,
|
|
"plugin": ["typedoc-plugin-markdown"],
|
|
"readme": "none",
|
|
"githubPages": false,
|
|
"disableSources": false,
|
|
"includeVersion": true,
|
|
"sort": ["source-order"]
|
|
}
|