{"@context":"https://w3id.org/codemeta/3.0","@type":"SoftwareSourceCode","identifier":"pkg:npm/render-why","name":"render-why","description":"Why did my React component re-render? The useWhyRender() hook tells you in plain English — with autofix suggestions. A modern, zero-config why-did-you-render alternative for React 18, React 19, React Compiler, React Native, and Expo. No Babel, no monkey-p","version":"1.0.0","softwareVersion":"1.0.0","license":"https://spdx.org/licenses/MIT","codeRepository":"https://github.com/Kenildev007/render-why","issueTracker":"https://github.com/Kenildev007/render-why/issues","url":"https://github.com/Kenildev007/render-why#readme","keywords":["react","react-19","react-18","react-compiler","react-native","expo","hooks","hook","useWhyRender","why-did-you-render","wdyr","why-did-this-render","why-did-component-render","rerender","re-render","rerenders","unnecessary-rerenders","wasted-renders","render-debug","react-debug","debug-render","react-debugger","performance","react-performance","react-profiler","react-devtools","memoization","useMemo","useCallback","react-memo","prop-diff","redux","zustand","jotai","tanstack-query","valtio","mobx","typescript"],"programmingLanguage":{"@type":"ComputerLanguage","name":"TypeScript"},"maintainer":[{"@type":"Person","name":"kenildev007"}],"author":[{"@type":"Person","name":"kenildev007"}],"copyrightHolder":[{"@type":"Person","name":"kenildev007"}],"dateCreated":"2026-04-27","dateModified":"2026-04-27","datePublished":"2026-04-27","copyrightYear":2026,"downloadUrl":"https://registry.npmjs.org/render-why/-/render-why-1.0.0.tgz","applicationCategory":"npm","runtimePlatform":"npm","developmentStatus":"active","sameAs":["https://www.npmjs.com/package/render-why"],"funder":[{"@type":"Organization","url":"https://github.com/sponsors/Kenildev007"}],"https://www.w3.org/ns/activitystreams#likes":1}