{"owner":"angular","repo":"components","hasSkills":true,"totalSkillsCount":10,"totalTokensCount":1155,"categories":["anthropic-skill","plugin-manifest","cursor-rule"],"hasMcp":false,"mcpConfig":null,"found":["tools/tsconfig-test.json","tools/dgeni/tsconfig.json","tools/adev-api-extraction/tsconfig.json","tools/tsconfig.json","tools/adev-api-extraction/README.md","tools/example-module/tsconfig.json","tools/highlight-files/tsconfig.json","tools/extract-tokens/tsconfig.json","tools/region-parser/README.md",".cursorrules (react-components-creation-cursorrules-prompt-file.mdc)"],"skills":{"tools/tsconfig-test.json":"{\n  \"extends\": \"./tsconfig.json\",\n  \"compilerOptions\": {\n    \"types\": [\"node\", \"jasmine\"]\n  },\n  \"exclude\": []\n}\n","tools/dgeni/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"noUnusedParameters\": false,\n    \"noUnusedLocals\": false,\n    \"lib\": [\"es2022\", \"dom\"],\n    \"moduleResolution\": \"node\",\n    \"esModuleInterop\": true,\n    \"strictNullChecks\": true,\n    \"noPropertyAccessFromIndexSignature\": true,\n    \"useUnknownInCatchVariables\": true,\n    \"noImplicitReturns\": true,\n    \"strictFunctionTypes\": true,\n    \"noImplicitThis\": true,\n    \"noImplicitAny\": true,\n    \"noFallthroughCasesInSwitch\": true,\n    \"noImplicitOverride\": true,\n    \"target\": \"es2020\",\n    \"types\": [\"node\"]\n  }\n}\n","tools/adev-api-extraction/tsconfig.json":"/* To learn more about this file see: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */\n{\n  \"ts-node\": {\n    \"compilerOptions\": {\n      \"module\": \"commonjs\"\n    }\n  },\n  \"compileOnSave\": false,\n  \"compilerOptions\": {\n    \"strict\": true,\n    \"types\": [\"node\"],\n    \"module\": \"esnext\",\n    \"target\": \"esnext\",\n    \"moduleResolution\": \"bundler\",\n    \"resolveJsonModule\": true,\n    \"declaration\": true,\n    \"sourceMap\": true\n  },\n  \"angularCompilerOptions\": {\n    \"enableI18nLegacyMessageIdFormat\": false,\n    \"strictInjectionParameters\": true,\n    \"strictInputAccessModifiers\": true,\n    \"strictTemplates\": true\n  }\n}\n","tools/tsconfig.json":"{\n  \"include\": [\"./**/*.mts\", \"./**/*.ts\"],\n  \"compilerOptions\": {\n    \"target\": \"es2020\",\n    \"module\": \"Node16\",\n    \"strict\": true,\n    \"sourceMap\": true,\n    \"declaration\": true,\n    \"esModuleInterop\": true,\n    \"lib\": [\"es2022\"],\n    \"skipLibCheck\": true,\n    \"types\": [\"node\"]\n  },\n  \"exclude\": [\"**/*.spec.ts\", \"**/*.spec.mts\", \"adev-api-extraction/**\"]\n}\n","tools/adev-api-extraction/README.md":"Copied from https://github.com/angular/angular/tree/main/adev/shared-docs/pipeline/api-gen/extraction\n\nTODO: share this script between angular/angular & angular/components\n","tools/example-module/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/highlight-files/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/extract-tokens/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"target\": \"es2020\",\n    \"esModuleInterop\": true,\n    \"sourceMap\": true,\n    \"strict\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/region-parser/README.md":"The implementation of `region-parser` is copied from the `angular/angular` repo. \nIt has been adapted from JavaScript to Typescript along with a few minor changes.\nThis is part of an ongoing effort to share more components between [angular.io] and [material.angular.dev].\n",".cursorrules (react-components-creation-cursorrules-prompt-file.mdc)":"---\ndescription: \"Cursor rules for React component creation and development.\"\nglobs: **/*\nalwaysApply: false\n---\n# Cursor Rules\n\n## Whenever you need a React component\n\n1. Carefully consider the component's purpose, functionality, and design\n\n2. Think slowly, step by step, and outline your reasoning\n\n3. Check if a similar component already exists in any of the following locations\n   1. packages/ui/src/components\n   2. apps/spa/src/components\n\n4. If it doesn't exist, generate a detailed prompt for the component, including:\n   - Component name and purpose\n   - Desired props and their types\n   - Any specific styling or behavior requirements\n   - Mention of using Tailwind CSS for styling\n   - Request for TypeScript usage\n\n5. URL encode the prompt.\n\n6. Create a clickable link in this format:\n   [ComponentName](https://v0.dev/chat?q={encoded_prompt})\n\n7. After generating, adapt the component to fit our project structure:\n   - Import\n     - common shadcn/ui components from <ui_package_alias>@repo/ui/components/ui/</ui_package_alias>\n     - app specific components from <app_package_alias>@/components</app_package_alias>\n   - Ensure it follows our existing component patterns\n   - Add any necessary custom logic or state management\n\nExample prompt template:\n\"Create a React component named {ComponentName} using TypeScript and Tailwind CSS. It should {description of functionality}. Props should include {list of props with types}. The component should {any specific styling or behavior notes}. Please provide the full component code.\"\n\nRemember to replace placeholders like <ui_package_path> and <app_package_alias> with the actual values used in your project.\n"},"files":{"tools/tsconfig-test.json":"{\n  \"extends\": \"./tsconfig.json\",\n  \"compilerOptions\": {\n    \"types\": [\"node\", \"jasmine\"]\n  },\n  \"exclude\": []\n}\n","tools/dgeni/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"noUnusedParameters\": false,\n    \"noUnusedLocals\": false,\n    \"lib\": [\"es2022\", \"dom\"],\n    \"moduleResolution\": \"node\",\n    \"esModuleInterop\": true,\n    \"strictNullChecks\": true,\n    \"noPropertyAccessFromIndexSignature\": true,\n    \"useUnknownInCatchVariables\": true,\n    \"noImplicitReturns\": true,\n    \"strictFunctionTypes\": true,\n    \"noImplicitThis\": true,\n    \"noImplicitAny\": true,\n    \"noFallthroughCasesInSwitch\": true,\n    \"noImplicitOverride\": true,\n    \"target\": \"es2020\",\n    \"types\": [\"node\"]\n  }\n}\n","tools/adev-api-extraction/tsconfig.json":"/* To learn more about this file see: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */\n{\n  \"ts-node\": {\n    \"compilerOptions\": {\n      \"module\": \"commonjs\"\n    }\n  },\n  \"compileOnSave\": false,\n  \"compilerOptions\": {\n    \"strict\": true,\n    \"types\": [\"node\"],\n    \"module\": \"esnext\",\n    \"target\": \"esnext\",\n    \"moduleResolution\": \"bundler\",\n    \"resolveJsonModule\": true,\n    \"declaration\": true,\n    \"sourceMap\": true\n  },\n  \"angularCompilerOptions\": {\n    \"enableI18nLegacyMessageIdFormat\": false,\n    \"strictInjectionParameters\": true,\n    \"strictInputAccessModifiers\": true,\n    \"strictTemplates\": true\n  }\n}\n","tools/tsconfig.json":"{\n  \"include\": [\"./**/*.mts\", \"./**/*.ts\"],\n  \"compilerOptions\": {\n    \"target\": \"es2020\",\n    \"module\": \"Node16\",\n    \"strict\": true,\n    \"sourceMap\": true,\n    \"declaration\": true,\n    \"esModuleInterop\": true,\n    \"lib\": [\"es2022\"],\n    \"skipLibCheck\": true,\n    \"types\": [\"node\"]\n  },\n  \"exclude\": [\"**/*.spec.ts\", \"**/*.spec.mts\", \"adev-api-extraction/**\"]\n}\n","tools/adev-api-extraction/README.md":"Copied from https://github.com/angular/angular/tree/main/adev/shared-docs/pipeline/api-gen/extraction\n\nTODO: share this script between angular/angular & angular/components\n","tools/example-module/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/highlight-files/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/extract-tokens/tsconfig.json":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"target\": \"es2020\",\n    \"esModuleInterop\": true,\n    \"sourceMap\": true,\n    \"strict\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","tools/region-parser/README.md":"The implementation of `region-parser` is copied from the `angular/angular` repo. \nIt has been adapted from JavaScript to Typescript along with a few minor changes.\nThis is part of an ongoing effort to share more components between [angular.io] and [material.angular.dev].\n",".cursorrules (react-components-creation-cursorrules-prompt-file.mdc)":"---\ndescription: \"Cursor rules for React component creation and development.\"\nglobs: **/*\nalwaysApply: false\n---\n# Cursor Rules\n\n## Whenever you need a React component\n\n1. Carefully consider the component's purpose, functionality, and design\n\n2. Think slowly, step by step, and outline your reasoning\n\n3. Check if a similar component already exists in any of the following locations\n   1. packages/ui/src/components\n   2. apps/spa/src/components\n\n4. If it doesn't exist, generate a detailed prompt for the component, including:\n   - Component name and purpose\n   - Desired props and their types\n   - Any specific styling or behavior requirements\n   - Mention of using Tailwind CSS for styling\n   - Request for TypeScript usage\n\n5. URL encode the prompt.\n\n6. Create a clickable link in this format:\n   [ComponentName](https://v0.dev/chat?q={encoded_prompt})\n\n7. After generating, adapt the component to fit our project structure:\n   - Import\n     - common shadcn/ui components from <ui_package_alias>@repo/ui/components/ui/</ui_package_alias>\n     - app specific components from <app_package_alias>@/components</app_package_alias>\n   - Ensure it follows our existing component patterns\n   - Add any necessary custom logic or state management\n\nExample prompt template:\n\"Create a React component named {ComponentName} using TypeScript and Tailwind CSS. It should {description of functionality}. Props should include {list of props with types}. The component should {any specific styling or behavior notes}. Please provide the full component code.\"\n\nRemember to replace placeholders like <ui_package_path> and <app_package_alias> with the actual values used in your project.\n"},"items":[{"name":"tsconfig.json","path":"tools/adev-api-extraction/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/adev-api-extraction/tsconfig.json","title":"Adev-api-extraction Skill","category":"anthropic-skill","format":"json","content":"/* To learn more about this file see: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */\n{\n  \"ts-node\": {\n    \"compilerOptions\": {\n      \"module\": \"commonjs\"\n    }\n  },\n  \"compileOnSave\": false,\n  \"compilerOptions\": {\n    \"strict\": true,\n    \"types\": [\"node\"],\n    \"module\": \"esnext\",\n    \"target\": \"esnext\",\n    \"moduleResolution\": \"bundler\",\n    \"resolveJsonModule\": true,\n    \"declaration\": true,\n    \"sourceMap\": true\n  },\n  \"angularCompilerOptions\": {\n    \"enableI18nLegacyMessageIdFormat\": false,\n    \"strictInjectionParameters\": true,\n    \"strictInputAccessModifiers\": true,\n    \"strictTemplates\": true\n  }\n}\n","isInternal":false,"tokens":173,"sizeBytes":633},{"name":"tsconfig.json","path":"tools/dgeni/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/dgeni/tsconfig.json","title":"Dgeni Skill","category":"anthropic-skill","format":"json","content":"{\n  \"compilerOptions\": {\n    \"noUnusedParameters\": false,\n    \"noUnusedLocals\": false,\n    \"lib\": [\"es2022\", \"dom\"],\n    \"moduleResolution\": \"node\",\n    \"esModuleInterop\": true,\n    \"strictNullChecks\": true,\n    \"noPropertyAccessFromIndexSignature\": true,\n    \"useUnknownInCatchVariables\": true,\n    \"noImplicitReturns\": true,\n    \"strictFunctionTypes\": true,\n    \"noImplicitThis\": true,\n    \"noImplicitAny\": true,\n    \"noFallthroughCasesInSwitch\": true,\n    \"noImplicitOverride\": true,\n    \"target\": \"es2020\",\n    \"types\": [\"node\"]\n  }\n}\n","frontmatter":{"compilerOptions":{"noUnusedParameters":false,"noUnusedLocals":false,"lib":["es2022","dom"],"moduleResolution":"node","esModuleInterop":true,"strictNullChecks":true,"noPropertyAccessFromIndexSignature":true,"useUnknownInCatchVariables":true,"noImplicitReturns":true,"strictFunctionTypes":true,"noImplicitThis":true,"noImplicitAny":true,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"target":"es2020","types":["node"]}},"isInternal":false,"tokens":150,"sizeBytes":539},{"name":"tsconfig.json","path":"tools/example-module/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/example-module/tsconfig.json","title":"Example-module Skill","category":"anthropic-skill","format":"json","content":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","frontmatter":{"compilerOptions":{"lib":["es2020"],"module":"commonjs","esModuleInterop":true,"target":"es2020","sourceMap":true,"types":["node"]},"bazelOptions":{"suppressTsconfigOverrideWarnings":true}},"isInternal":false,"tokens":76,"sizeBytes":248},{"name":"tsconfig.json","path":"tools/extract-tokens/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/extract-tokens/tsconfig.json","title":"Extract-tokens Skill","category":"anthropic-skill","format":"json","content":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"target\": \"es2020\",\n    \"esModuleInterop\": true,\n    \"sourceMap\": true,\n    \"strict\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","frontmatter":{"compilerOptions":{"lib":["es2020"],"module":"commonjs","target":"es2020","esModuleInterop":true,"sourceMap":true,"strict":true,"types":["node"]},"bazelOptions":{"suppressTsconfigOverrideWarnings":true}},"isInternal":false,"tokens":82,"sizeBytes":268},{"name":"tsconfig.json","path":"tools/highlight-files/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/highlight-files/tsconfig.json","title":"Highlight-files Skill","category":"anthropic-skill","format":"json","content":"{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n","frontmatter":{"compilerOptions":{"lib":["es2020"],"module":"commonjs","esModuleInterop":true,"target":"es2020","sourceMap":true,"types":["node"]},"bazelOptions":{"suppressTsconfigOverrideWarnings":true}},"isInternal":false,"tokens":76,"sizeBytes":248},{"name":"tsconfig-test.json","path":"tools/tsconfig-test.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/tsconfig-test.json","title":"Tools Skill","category":"anthropic-skill","format":"json","content":"{\n  \"extends\": \"./tsconfig.json\",\n  \"compilerOptions\": {\n    \"types\": [\"node\", \"jasmine\"]\n  },\n  \"exclude\": []\n}\n","frontmatter":{"extends":"./tsconfig.json","compilerOptions":{"types":["node","jasmine"]},"exclude":[]},"isInternal":false,"tokens":35,"sizeBytes":113},{"name":"tsconfig.json","path":"tools/tsconfig.json","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/tsconfig.json","title":"Tools Skill","category":"anthropic-skill","format":"json","content":"{\n  \"include\": [\"./**/*.mts\", \"./**/*.ts\"],\n  \"compilerOptions\": {\n    \"target\": \"es2020\",\n    \"module\": \"Node16\",\n    \"strict\": true,\n    \"sourceMap\": true,\n    \"declaration\": true,\n    \"esModuleInterop\": true,\n    \"lib\": [\"es2022\"],\n    \"skipLibCheck\": true,\n    \"types\": [\"node\"]\n  },\n  \"exclude\": [\"**/*.spec.ts\", \"**/*.spec.mts\", \"adev-api-extraction/**\"]\n}\n","frontmatter":{"include":["./**/*.mts","./**/*.ts"],"compilerOptions":{"target":"es2020","module":"Node16","strict":true,"sourceMap":true,"declaration":true,"esModuleInterop":true,"lib":["es2022"],"skipLibCheck":true,"types":["node"]},"exclude":["**/*.spec.ts","**/*.spec.mts","adev-api-extraction/**"]},"isInternal":false,"tokens":116,"sizeBytes":363},{"name":"README.md","path":"tools/adev-api-extraction/README.md","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/adev-api-extraction/README.md","title":"adev-api-extraction Documentation","category":"plugin-manifest","format":"markdown","content":"Copied from https://github.com/angular/angular/tree/main/adev/shared-docs/pipeline/api-gen/extraction\n\nTODO: share this script between angular/angular & angular/components\n","isInternal":false,"tokens":36,"sizeBytes":172},{"name":"README.md","path":"tools/region-parser/README.md","rawUrl":"https://raw.githubusercontent.com/angular/components/HEAD/tools/region-parser/README.md","title":"region-parser Documentation","category":"plugin-manifest","format":"markdown","content":"The implementation of `region-parser` is copied from the `angular/angular` repo. \nIt has been adapted from JavaScript to Typescript along with a few minor changes.\nThis is part of an ongoing effort to share more components between [angular.io] and [material.angular.dev].\n","isInternal":false,"tokens":56,"sizeBytes":272},{"name":".cursorrules","path":".cursorrules (react-components-creation-cursorrules-prompt-file.mdc)","rawUrl":"https://raw.githubusercontent.com/PatrickJS/awesome-cursorrules/main/rules/react-components-creation-cursorrules-prompt-file.mdc","title":"Awesome Cursorrules: react components creation","category":"cursor-rule","format":"markdown","content":"---\ndescription: \"Cursor rules for React component creation and development.\"\nglobs: **/*\nalwaysApply: false\n---\n# Cursor Rules\n\n## Whenever you need a React component\n\n1. Carefully consider the component's purpose, functionality, and design\n\n2. Think slowly, step by step, and outline your reasoning\n\n3. Check if a similar component already exists in any of the following locations\n   1. packages/ui/src/components\n   2. apps/spa/src/components\n\n4. If it doesn't exist, generate a detailed prompt for the component, including:\n   - Component name and purpose\n   - Desired props and their types\n   - Any specific styling or behavior requirements\n   - Mention of using Tailwind CSS for styling\n   - Request for TypeScript usage\n\n5. URL encode the prompt.\n\n6. Create a clickable link in this format:\n   [ComponentName](https://v0.dev/chat?q={encoded_prompt})\n\n7. After generating, adapt the component to fit our project structure:\n   - Import\n     - common shadcn/ui components from <ui_package_alias>@repo/ui/components/ui/</ui_package_alias>\n     - app specific components from <app_package_alias>@/components</app_package_alias>\n   - Ensure it follows our existing component patterns\n   - Add any necessary custom logic or state management\n\nExample prompt template:\n\"Create a React component named {ComponentName} using TypeScript and Tailwind CSS. It should {description of functionality}. Props should include {list of props with types}. The component should {any specific styling or behavior notes}. Please provide the full component code.\"\n\nRemember to replace placeholders like <ui_package_path> and <app_package_alias> with the actual values used in your project.\n","tokens":355,"sizeBytes":1671}],"systemPromptSnippet":"<yakaai_skills repo=\"angular/components\">\n<!-- File: tools/adev-api-extraction/tsconfig.json (Tokens: ~173 | Category: anthropic-skill) -->\n/* To learn more about this file see: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */\n{\n  \"ts-node\": {\n    \"compilerOptions\": {\n      \"module\": \"commonjs\"\n    }\n  },\n  \"compileOnSave\": false,\n  \"compilerOptions\": {\n    \"strict\": true,\n    \"types\": [\"node\"],\n    \"module\": \"esnext\",\n    \"target\": \"esnext\",\n    \"moduleResolution\": \"bundler\",\n    \"resolveJsonModule\": true,\n    \"declaration\": true,\n    \"sourceMap\": true\n  },\n  \"angularCompilerOptions\": {\n    \"enableI18nLegacyMessageIdFormat\": false,\n    \"strictInjectionParameters\": true,\n    \"strictInputAccessModifiers\": true,\n    \"strictTemplates\": true\n  }\n}\n\n<!-- File: tools/dgeni/tsconfig.json (Tokens: ~150 | Category: anthropic-skill) -->\n{\n  \"compilerOptions\": {\n    \"noUnusedParameters\": false,\n    \"noUnusedLocals\": false,\n    \"lib\": [\"es2022\", \"dom\"],\n    \"moduleResolution\": \"node\",\n    \"esModuleInterop\": true,\n    \"strictNullChecks\": true,\n    \"noPropertyAccessFromIndexSignature\": true,\n    \"useUnknownInCatchVariables\": true,\n    \"noImplicitReturns\": true,\n    \"strictFunctionTypes\": true,\n    \"noImplicitThis\": true,\n    \"noImplicitAny\": true,\n    \"noFallthroughCasesInSwitch\": true,\n    \"noImplicitOverride\": true,\n    \"target\": \"es2020\",\n    \"types\": [\"node\"]\n  }\n}\n\n<!-- File: tools/example-module/tsconfig.json (Tokens: ~76 | Category: anthropic-skill) -->\n{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n\n<!-- File: tools/extract-tokens/tsconfig.json (Tokens: ~82 | Category: anthropic-skill) -->\n{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"target\": \"es2020\",\n    \"esModuleInterop\": true,\n    \"sourceMap\": true,\n    \"strict\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n\n<!-- File: tools/highlight-files/tsconfig.json (Tokens: ~76 | Category: anthropic-skill) -->\n{\n  \"compilerOptions\": {\n    \"lib\": [\"es2020\"],\n    \"module\": \"commonjs\",\n    \"esModuleInterop\": true,\n    \"target\": \"es2020\",\n    \"sourceMap\": true,\n    \"types\": [\"node\"]\n  },\n  \"bazelOptions\": {\n    \"suppressTsconfigOverrideWarnings\": true\n  }\n}\n\n<!-- File: tools/tsconfig-test.json (Tokens: ~35 | Category: anthropic-skill) -->\n{\n  \"extends\": \"./tsconfig.json\",\n  \"compilerOptions\": {\n    \"types\": [\"node\", \"jasmine\"]\n  },\n  \"exclude\": []\n}\n\n<!-- File: tools/tsconfig.json (Tokens: ~116 | Category: anthropic-skill) -->\n{\n  \"include\": [\"./**/*.mts\", \"./**/*.ts\"],\n  \"compilerOptions\": {\n    \"target\": \"es2020\",\n    \"module\": \"Node16\",\n    \"strict\": true,\n    \"sourceMap\": true,\n    \"declaration\": true,\n    \"esModuleInterop\": true,\n    \"lib\": [\"es2022\"],\n    \"skipLibCheck\": true,\n    \"types\": [\"node\"]\n  },\n  \"exclude\": [\"**/*.spec.ts\", \"**/*.spec.mts\", \"adev-api-extraction/**\"]\n}\n\n<!-- File: tools/adev-api-extraction/README.md (Tokens: ~36 | Category: plugin-manifest) -->\nCopied from https://github.com/angular/angular/tree/main/adev/shared-docs/pipeline/api-gen/extraction\n\nTODO: share this script between angular/angular & angular/components\n\n<!-- File: tools/region-parser/README.md (Tokens: ~56 | Category: plugin-manifest) -->\nThe implementation of `region-parser` is copied from the `angular/angular` repo. \nIt has been adapted from JavaScript to Typescript along with a few minor changes.\nThis is part of an ongoing effort to share more components between [angular.io] and [material.angular.dev].\n\n<!-- File: .cursorrules (react-components-creation-cursorrules-prompt-file.mdc) (Tokens: ~355 | Category: cursor-rule) -->\n---\ndescription: \"Cursor rules for React component creation and development.\"\nglobs: **/*\nalwaysApply: false\n---\n# Cursor Rules\n\n## Whenever you need a React component\n\n1. Carefully consider the component's purpose, functionality, and design\n\n2. Think slowly, step by step, and outline your reasoning\n\n3. Check if a similar component already exists in any of the following locations\n   1. packages/ui/src/components\n   2. apps/spa/src/components\n\n4. If it doesn't exist, generate a detailed prompt for the component, including:\n   - Component name and purpose\n   - Desired props and their types\n   - Any specific styling or behavior requirements\n   - Mention of using Tailwind CSS for styling\n   - Request for TypeScript usage\n\n5. URL encode the prompt.\n\n6. Create a clickable link in this format:\n   [ComponentName](https://v0.dev/chat?q={encoded_prompt})\n\n7. After generating, adapt the component to fit our project structure:\n   - Import\n     - common shadcn/ui components from <ui_package_alias>@repo/ui/components/ui/</ui_package_alias>\n     - app specific components from <app_package_alias>@/components</app_package_alias>\n   - Ensure it follows our existing component patterns\n   - Add any necessary custom logic or state management\n\nExample prompt template:\n\"Create a React component named {ComponentName} using TypeScript and Tailwind CSS. It should {description of functionality}. Props should include {list of props with types}. The component should {any specific styling or behavior notes}. Please provide the full component code.\"\n\nRemember to replace placeholders like <ui_package_path> and <app_package_alias> with the actual values used in your project.\n</yakaai_skills>"}