[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-facebook-eslint-plugin-react-hooks-vi":3,"guides-for-facebook-eslint-plugin-react-hooks":223,"similar-k171ck7gyw157xcvkrk6k0r9y1866w01":224},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":20,"identity":184,"isFallback":188,"parentExtension":189,"providers":190,"relations":194,"repo":196,"workflow":220},1778054425877.1958,"k171ck7gyw157xcvkrk6k0r9y1866w01",[],{"reviewCount":8},0,{"description":10,"name":11,"sourceUrl":12,"tags":13},"ESLint rules for React Hooks","ESLint Plugin React Hooks","https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks",[14,15,16,17,18,19],"react","eslint","linting","hooks","javascript","typescript",{"_creationTime":21,"_id":22,"extensionId":5,"locale":23,"result":24,"trustSignals":172,"workflow":182},1778054588390.8604,"kn7ev8z5r57q01pbtm25v500r9867w7a","en",{"checks":25,"evaluatedAt":162,"extensionSummary":163,"promptVersionExtension":164,"promptVersionScoring":165,"rationale":166,"score":167,"summary":168,"tags":169,"targetMarket":170,"tier":171},[26,31,34,37,41,44,49,53,56,59,63,67,70,74,77,80,83,86,89,92,95,99,103,107,111,114,117,120,124,127,130,133,136,139,143,146,149,152,155,159],{"category":27,"check":28,"severity":29,"summary":30},"Practical Utility","Problem relevance","pass","The displayed description accurately states the extension's purpose: providing ESLint rules for React Hooks.",{"category":27,"check":32,"severity":29,"summary":33},"Unique selling proposition","This extension provides specialized ESLint rules for React Hooks, offering value beyond default linting or basic React practices.",{"category":27,"check":35,"severity":29,"summary":36},"Production readiness","The extension is a mature ESLint plugin with a comprehensive set of rules, actively maintained as part of the React repository, indicating readiness for production workflows.",{"category":38,"check":39,"severity":29,"summary":40},"Scope","Single responsibility principle","The extension focuses solely on providing ESLint rules for React Hooks and related compiler optimizations, adhering to a single responsibility.",{"category":38,"check":42,"severity":29,"summary":43},"Description quality","The description 'ESLint rules for React Hooks' is concise and accurately reflects the extension's functionality.",{"category":45,"check":46,"severity":47,"summary":48},"Invocation","Scoped tools","not_applicable","This extension operates as ESLint rules, not as tools with distinct commands or verb-noun interfaces.",{"category":50,"check":51,"severity":29,"summary":52},"Documentation","Configuration & parameter reference","The README provides detailed examples for both flat and legacy ESLint configurations, and explains custom configuration options like `additionalHooks`.",{"category":38,"check":54,"severity":47,"summary":55},"Tool naming","This extension provides ESLint rules, not distinct tools with names to evaluate.",{"category":38,"check":57,"severity":47,"summary":58},"Minimal I/O surface","The extension functions as ESLint rules and does not expose tools with parameters or responses.",{"category":60,"check":61,"severity":29,"summary":62},"License","License usability","The extension is licensed under MIT, a permissive open-source license, and this is clearly stated in the package.json and LICENSE file.",{"category":64,"check":65,"severity":29,"summary":66},"Maintenance","Commit recency","The extension is part of the main React repository and has recent commits (as of the latest commit hash provided), indicating active maintenance.",{"category":64,"check":68,"severity":29,"summary":69},"Dependency Management","The extension specifies peer dependencies like ESLint and has dev dependencies like Babel and TypeScript parsers, with lockfiles implied by the repository structure, indicating managed dependencies.",{"category":71,"check":72,"severity":29,"summary":73},"Security","Secret Management","The extension operates as ESLint rules and does not handle or expose secrets.",{"category":71,"check":75,"severity":29,"summary":76},"Injection","The extension is a static analysis tool and does not load or execute untrusted third-party data.",{"category":71,"check":78,"severity":29,"summary":79},"Transitive Supply-Chain Grenades","The extension's code is entirely contained within the repository and does not fetch remote code or data at runtime.",{"category":71,"check":81,"severity":29,"summary":82},"Sandbox Isolation","As a static analysis tool, the extension does not interact with the file system or perform operations outside its intended scope.",{"category":71,"check":84,"severity":29,"summary":85},"Sandbox escape primitives","The extension does not contain any detached process spawns or deny-retry loops; it operates within the ESLint environment.",{"category":71,"check":87,"severity":29,"summary":88},"Data Exfiltration","The extension is a static analysis tool and has no mechanisms for exfiltrating data.",{"category":71,"check":90,"severity":29,"summary":91},"Hidden Text Tricks","The bundled files are standard JavaScript/TypeScript code and do not contain hidden-steering tricks like invisible characters or unusual formatting.",{"category":71,"check":93,"severity":29,"summary":94},"Opaque code execution","The extension's code is provided as plain, readable source files and does not involve obfuscation or dynamic code fetching.",{"category":96,"check":97,"severity":29,"summary":98},"Portability","Structural Assumption","The extension does not make assumptions about user project structure outside of standard ESLint configuration.",{"category":100,"check":101,"severity":29,"summary":102},"Trust","Issues Attention","No issues data available, assuming maintenance within the main React repo is robust.",{"category":104,"check":105,"severity":29,"summary":106},"Versioning","Release Management","The extension has version information in its package.json and CHANGELOG.md, indicating a managed release process.",{"category":108,"check":109,"severity":29,"summary":110},"Code Execution","Validation","The extension relies on ESLint's parsing and validation mechanisms, and its internal tests cover various code path analyses for validation.",{"category":71,"check":112,"severity":29,"summary":113},"Unguarded Destructive Operations","As a static analysis tool, the extension performs no destructive operations.",{"category":108,"check":115,"severity":29,"summary":116},"Error Handling","The extension is part of the ESLint ecosystem and relies on ESLint's error handling, with extensive internal tests covering code path analysis.",{"category":108,"check":118,"severity":47,"summary":119},"Logging","The extension is a static analysis tool and does not perform actions that require local audit logging.",{"category":121,"check":122,"severity":29,"summary":123},"Compliance","GDPR","The extension is a static analysis tool and does not process personal data.",{"category":121,"check":125,"severity":29,"summary":126},"Target market","The extension is a general-purpose ESLint plugin for React Hooks and has no geographical or jurisdictional limitations; targetMarket is global.",{"category":96,"check":128,"severity":29,"summary":129},"Runtime stability","The extension's compatibility with various ESLint versions and parsers is well-tested in its suite, ensuring broad runtime stability.",{"category":45,"check":131,"severity":29,"summary":132},"Precise Purpose","The extension's purpose is precisely defined as providing ESLint rules for React Hooks, with clear scope in its documentation and README.",{"category":45,"check":134,"severity":29,"summary":135},"Concise Frontmatter","The README frontmatter is concise, immediately stating the plugin's purpose and installation instructions.",{"category":50,"check":137,"severity":29,"summary":138},"Concise Body","The README is well-structured with clear sections for installation, configuration, and examples, keeping the main content focused.",{"category":140,"check":141,"severity":29,"summary":142},"Context","Progressive Disclosure","The README effectively uses progressive disclosure, providing clear installation and configuration steps upfront and linking to external React documentation for deeper dives into hook rules.",{"category":140,"check":144,"severity":47,"summary":145},"Forked exploration","This extension provides static analysis rules and does not involve exploratory workflows that would benefit from `context: fork`.",{"category":27,"check":147,"severity":29,"summary":148},"Usage examples","The README provides clear, copy-pasteable examples for both flat and legacy ESLint configurations, demonstrating how to enable the recommended rules.",{"category":27,"check":150,"severity":29,"summary":151},"Edge cases","The extensive test suite within the repository covers numerous valid and invalid code patterns, including edge cases for React Hooks usage, ensuring robust handling.",{"category":108,"check":153,"severity":47,"summary":154},"Tool Fallback","This extension does not rely on external tools like an MCP server; it integrates directly with ESLint.",{"category":156,"check":157,"severity":29,"summary":158},"Safety","Halt on unexpected state","As an ESLint plugin, it relies on ESLint's robust error handling and reporting for unexpected states during linting.",{"category":96,"check":160,"severity":47,"summary":161},"Cross-skill coupling","This extension operates within the ESLint ecosystem and does not have cross-skill dependencies.",1778054440303,"This plugin provides essential ESLint rules to ensure correct usage of React Hooks, enhancing code quality and preventing common bugs. It includes checks for dependency management and adherence to the rules of hooks, promoting robust React development.","2.0.0","3.4.0","The extension is part of the official React repository, actively maintained, and has comprehensive test coverage. It adheres to all relevant checks for a linter plugin, including clear documentation, licensing, and no security concerns.",99,"A high-quality ESLint plugin enforcing best practices for React Hooks.",[14,15,16,17,18,19],"global","verified",{"codeQuality":173,"collectedAt":174,"documentation":175,"maintenance":177,"security":178,"testCoverage":181},{},1778054432910,{"descriptionLength":176,"readmeSize":8},28,{},{"hasNpmPackage":179,"license":180,"smitheryVerified":179},false,"MIT",{"hasCi":179,"hasTests":179},{"updatedAt":183},1778054588390,{"githubOwner":185,"githubRepo":14,"locale":23,"slug":186,"type":187},"facebook","eslint-plugin-react-hooks","skill",true,null,{"extract":191,"llm":193},{"commitSha":192,"license":180},"9635257c1b557acc81f95b1e974a54c752e703a2",{"promptVersionExtension":164,"promptVersionScoring":165,"score":167,"targetMarket":170,"tier":171},{"repoId":195},"kd73v9dy7vwq94hgzc7eh43b9s865rhq",{"_creationTime":197,"_id":195,"identity":198,"providers":200,"workflow":217},1777995558409.9001,{"githubOwner":185,"githubRepo":14,"sourceUrl":199},"https://github.com/facebook/react",{"discover":201,"github":204},{"sources":202},[203],"skills-sh",{"closedIssues90d":205,"forks":206,"homepage":207,"license":180,"openIssues90d":208,"pushedAt":209,"readmeSize":210,"stars":211,"topics":212},50,50999,"https://react.dev",87,1777711841000,5317,244824,[18,14,213,214,215,216],"frontend","declarative","ui","library",{"discoverAt":218,"extractAt":219,"githubAt":219,"updatedAt":219},1777995558409,1778054430026,{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":183,"updatedAt":183},1778054428301,1778054425877,[],[225,254,284,302,318,347],{"_creationTime":226,"_id":227,"community":228,"display":229,"identity":239,"providers":243,"relations":248,"workflow":250},1778053622473.6711,"k176a0bfcr2ba1tesnxq87tpkd867bnw",{"reviewCount":8},{"description":230,"installMethods":231,"name":232,"sourceUrl":233,"tags":234},"Extension from jwynia/agent-skills",{},"React PWA","https://github.com/jwynia/agent-skills/tree/HEAD/skills/tech/frontend/pwa/react-pwa",[235,14,236,18,19,237,238],"pwa","vite","service-worker","web-development",{"githubOwner":240,"githubRepo":241,"locale":23,"slug":242,"type":187},"jwynia","agent-skills","react-pwa",{"extract":244,"llm":246},{"commitSha":245,"license":180},"e02ec7e226a6e4f8419fd3b88a1d8e472d421b32",{"promptVersionExtension":164,"promptVersionScoring":165,"score":247,"targetMarket":170,"tier":171},98,{"repoId":249},"kd7efn3mprpa8rd8vm5hw5ebzx864fph",{"anyEnrichmentAt":251,"extractAt":252,"githubAt":251,"llmAt":253,"updatedAt":253},1778053625386,1778053622473,1778054012696,{"_creationTime":255,"_id":256,"community":257,"display":258,"identity":266,"providers":270,"relations":277,"workflow":279},1777995614337.9844,"k17f0xfg2pkfqd1p5jjzh8sswh8645px",{"reviewCount":8},{"description":259,"installMethods":260,"name":261,"sourceUrl":262,"tags":263},"Scaffold an editable Tandem control panel app",{},"Tandem Panel Scaffold","https://github.com/frumu-ai/tandem/tree/HEAD/packages/create-tandem-panel",[264,265,14,19,236,215],"scaffolding","cli",{"githubOwner":267,"githubRepo":268,"locale":23,"slug":269,"type":187},"frumu-ai","tandem","create-tandem-panel",{"extract":271,"llm":274,"smithery":276},{"commitSha":272,"license":273},"25c8ae7c2f8b20d576a2b8d44946ac2e0ff9408d","MIT OR Apache-2.0",{"promptVersionExtension":164,"promptVersionScoring":165,"score":275,"targetMarket":170,"tier":171},100,{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":179},{"repoId":278},"kd72pd305er4m7vecv9p6mnd4s865kea",{"anyEnrichmentAt":280,"extractAt":281,"githubAt":282,"llmAt":283,"smitheryAt":280,"updatedAt":283},1777995723550,1777995614338,1777995614791,1777995897177,{"_creationTime":285,"_id":286,"community":287,"display":288,"identity":296,"providers":297,"relations":300,"workflow":301},1778054425877.2139,"k17754jcxje94z3mdn4b85xgax866yg5",{"reviewCount":8},{"description":289,"installMethods":290,"name":291,"sourceUrl":292,"tags":293},"Backwards compatible shim for React's useSyncExternalStore. Works with any React that supports hooks.",{},"use-sync-external-store","https://github.com/facebook/react/tree/HEAD/packages/use-sync-external-store",[14,17,294,295],"compatibility","shim",{"githubOwner":185,"githubRepo":14,"locale":23,"slug":291,"type":187},{"extract":298,"llm":299},{"commitSha":192,"license":180},{"promptVersionExtension":164,"promptVersionScoring":165,"score":247,"targetMarket":170,"tier":171},{"repoId":195},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":183,"updatedAt":183},{"_creationTime":303,"_id":304,"community":305,"display":306,"identity":312,"providers":313,"relations":316,"workflow":317},1778054425877.205,"k1788s1zmn7ntdbw621xdwznvx8664ht",{"reviewCount":8},{"description":307,"installMethods":308,"name":309,"sourceUrl":310,"tags":311},"Brand checking of React Elements.",{},"react-is","https://github.com/facebook/react/tree/HEAD/packages/react-is",[14,18,213,215],{"githubOwner":185,"githubRepo":14,"locale":23,"slug":309,"type":187},{"extract":314,"llm":315},{"commitSha":192,"license":180},{"promptVersionExtension":164,"promptVersionScoring":165,"score":247,"targetMarket":170,"tier":171},{"repoId":195},{"anyEnrichmentAt":221,"extractAt":222,"githubAt":221,"llmAt":183,"updatedAt":183},{"_creationTime":319,"_id":320,"community":321,"display":322,"identity":331,"providers":335,"relations":341,"workflow":343},1778054711476.0605,"k177n4w1k90ag2pk2qjwpc4ck18677wt",{"reviewCount":8},{"description":323,"installMethods":324,"name":325,"sourceUrl":326,"tags":327},"Configures ESLint v9 flat config and neostandard for JavaScript and TypeScript projects, including migrating from legacy `.eslintrc*` files or the `standard` package. Use when you need to set up or fix linting with `eslint.config.js` or `eslint.config.mjs`, troubleshoot lint errors, configure neostandard rules, migrate from `.eslintrc` to flat config, or integrate linting into CI pipelines and pre-commit hooks.",{},"Linting neostandard ESLint9","https://github.com/mcollina/skills/tree/HEAD/skills/linting-neostandard-eslint9",[16,328,15,18,19,329,330],"neostandard","configuration","migration",{"githubOwner":332,"githubRepo":333,"locale":23,"slug":334,"type":187},"mcollina","skills","linting-neostandard-eslint9",{"extract":336,"llm":338},{"commitSha":337,"license":180},"5b2a81354b6d10325da0db9decc9ce5ecc714138",{"promptVersionExtension":164,"promptVersionScoring":165,"score":339,"targetMarket":170,"tier":340},65,"flagged",{"repoId":342},"kd7a9jywzfe3c5g5r1a62htmrn865rt1",{"anyEnrichmentAt":344,"extractAt":345,"githubAt":344,"llmAt":346,"updatedAt":346},1778054711844,1778054711476,1778054745098,{"_creationTime":348,"_id":349,"community":350,"display":351,"identity":368,"providers":370,"relations":373,"workflow":374},1778053622473.6697,"k171f477n3e7072bp8naebmft986757y",{"reviewCount":8},{"description":352,"installMethods":353,"name":354,"sourceUrl":355,"tags":356},"Create distinctive, production-grade frontend interfaces with high design quality. Provides analysis tools for auditing existing designs and generation tools for creating color palettes, typography systems, design tokens, and component templates. Supports React, Vue, Svelte, and vanilla HTML/CSS. Use when building web components, pages, or applications. Keywords: design, UI, frontend, CSS, components, palette, typography, tokens, accessibility.",{},"Frontend Design","https://github.com/jwynia/agent-skills/tree/HEAD/skills/tech/frontend/design/frontend-design",[357,215,213,358,359,360,361,362,363,14,364,365,366,367],"design","css","components","palette","typography","tokens","accessibility","vue","svelte","html","deno",{"githubOwner":240,"githubRepo":241,"locale":23,"slug":369,"type":187},"frontend-design",{"extract":371,"llm":372},{"commitSha":245,"license":180},{"promptVersionExtension":164,"promptVersionScoring":165,"score":167,"targetMarket":170,"tier":171},{"repoId":249},{"anyEnrichmentAt":251,"extractAt":252,"githubAt":251,"llmAt":253,"updatedAt":253}]