@jjdenhertog/ai-driven-development
Version:
AI-driven development workflow with learning capabilities for Claude
189 lines • 5.28 kB
JSON
{
"version": "1.0.0",
"description": "Index of all preference files for AI parsing and navigation",
"preferences": {
"api": {
"file": "api.md",
"category": "backend",
"priority": "critical",
"rules": [
"api-location",
"router-pattern",
"no-next-connect",
"direct-json",
"error-format",
"zod-validation",
"schema-location"
],
"templates": [
"api-route-basic",
"zod-schema-basic"
],
"decision_trees": ["api-implementation"],
"validation_schemas": ["api-route"],
"dependencies": ["technology-stack", "folder-structure", "testing"]
},
"components": {
"file": "components.md",
"category": "frontend",
"priority": "critical",
"rules": [
"typescript-required",
"functional-only",
"readonly-props",
"clean-custom-props",
"usecallback-required",
"usememo-filtering",
"context-value-memoization"
],
"templates": [
"component-with-prop-cleanup",
"component-basic"
],
"decision_trees": ["state-management-choice"],
"validation_schemas": ["react-component"],
"dependencies": ["technology-stack", "styling", "state-management"]
},
"folder-structure": {
"file": "folder-structure.md",
"category": "architecture",
"priority": "high",
"rules": [
"file-placement",
"feature-colocation",
"api-directory",
"component-location",
"test-colocation"
],
"templates": [
"feature-component",
"ui-component"
],
"decision_trees": ["page-route-placement", "general-file-placement"],
"validation_schemas": ["feature-directory"],
"dependencies": []
},
"state-management": {
"file": "statemanagent.md",
"category": "frontend",
"priority": "high",
"rules": [
"server-state-tanstack",
"client-state-zustand",
"no-redux",
"query-key-convention",
"mutation-invalidation"
],
"templates": [
"tanstack-query-basic",
"tanstack-mutation",
"zustand-store-basic",
"context-provider-basic"
],
"decision_trees": ["tanstack-query-choice", "state-management-approach"],
"validation_schemas": ["context-api"],
"dependencies": ["technology-stack", "components"]
},
"styling": {
"file": "styling.md",
"category": "frontend",
"priority": "medium",
"rules": [
"mui-sx-primary",
"css-modules-secondary",
"no-css-in-js-libs",
"no-utility-classes",
"no-inline-styles"
],
"templates": [
"mui-sx-pattern",
"css-module-pattern"
],
"decision_trees": ["styling-approach"],
"validation_schemas": ["css-class-naming"],
"dependencies": ["technology-stack", "components"]
},
"technology-stack": {
"file": "technology-stack.md",
"category": "core",
"priority": "critical",
"rules": [
"exact-tech-stack",
"no-alternatives",
"dependency-versions"
],
"templates": [
"context-provider",
"form-with-validation",
"database-query"
],
"decision_trees": ["technology-choice"],
"validation_schemas": ["dependencies"],
"dependencies": []
},
"testing": {
"file": "testing.md",
"category": "quality",
"priority": "high",
"rules": [
"test-everything",
"user-perspective",
"no-internals",
"data-testid",
"test-naming"
],
"templates": [
"component-test-basic",
"hook-test-basic",
"api-route-test"
],
"decision_trees": ["what-to-test"],
"validation_schemas": ["test-naming"],
"dependencies": ["technology-stack", "components"]
},
"writing-style": {
"file": "writing-style.md",
"category": "code-style",
"priority": "medium",
"rules": [
"naming-conventions",
"import-organization",
"arrow-functions",
"explicit-types",
"readonly-modifiers"
],
"templates": [
"component-structure",
"zustand-state-update"
],
"decision_trees": ["type-annotation", "pattern-selection"],
"validation_schemas": ["variable-naming"],
"dependencies": []
}
},
"rule_categories": {
"backend": ["api"],
"frontend": ["components", "state-management", "styling"],
"architecture": ["folder-structure"],
"core": ["technology-stack"],
"quality": ["testing"],
"code-style": ["writing-style"]
},
"priority_order": [
"technology-stack",
"api",
"components",
"folder-structure",
"state-management",
"testing",
"styling",
"writing-style"
],
"cross_references": {
"authentication": ["api", "components", "state-management"],
"forms": ["components", "state-management", "styling"],
"data-fetching": ["api", "state-management", "components"],
"error-handling": ["api", "components", "state-management"],
"performance": ["components", "state-management", "api"]
}
}