{"repo":"HorusGoul/eslint-plugin-react-render-types","free":true,"listed":false,"github":"https://github.com/HorusGoul/eslint-plugin-react-render-types","clone":"git clone https://github.com/HorusGoul/eslint-plugin-react-render-types.git","description":"ESLint plugin that brings Flow's Render Types to TypeScript via JSDoc. Enforce component composition constraints like `@renders {MenuItem}` at lint time.","language":"TypeScript","stars":110,"topics":["design-system","eslint","eslint-plugin","flow","jsdoc","linting","react","typescript","component-validation","render-types"],"license":"MIT","category":"ui-components","readme_excerpt":"eslint-plugin-react-render-types An ESLint plugin that brings Flow's Render Types to TypeScript via JSDoc comments. Enforce component composition constraints at lint time. [!WARNING] This project was recently released and is in active development. APIs may change between minor releases. Feedback, bug reports, and contributions are welcome. Design systems often need to constrain which components can be rendered in specific contexts — a Menu should only accept MenuItem children, a Tabs component should only render Tab components, and so on. This plugin lets you express those constraints with @renders JSDoc annotations and validates them at lint time. See the example project for a full dashboard app demonstrating cross-file render type validation with a design system built on React, Vite, and shadcn/ui. Table of Contents - Installation - Configuration - Rules - JSDoc Syntax - IDE Integration - Limitations - Agent Skills - License Installation Peer Dependencies This plugin requires: - eslint = 9.0.0 - @typescript-eslint/parser = 8.0.0 - typescript = 5.0.0 Configuration ⚠️ Typed Linting Required This plugin requires typed linting. Without it, the plugin will throw an error. Typed linting connects ESLint to your TypeScript compiler, giving the plugin access to type information needed for cross-file component identity, render chain resolution, and prop validation. Flat Config (ESLint 9+) For more details on typed linting setup, see the typescript-eslint documentation. Manual configu","default_branch":null,"files":null,"tree":[],"storefront":"/r/HorusGoul","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/HorusGoul/eslint-plugin-react-render-types/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}