About Tripwire
Tripwire reads every code file in your Framer project and reports what will fail Framer's review, break hydration on the published site, or silently do nothing. Click a finding and it opens the file.
Twenty rules, each one from something that actually shipped and broke.
Review
• An animated component with no useIsStaticRenderer check
• A frame loop or timer that never pauses when it is off screen
• document.querySelector and friends reaching outside the component
• Nodes appended to document.head or body that outlive the component
• A script element created at runtime
• A portal, and what it costs inside Framer's stacking
• Code imported over the network at runtime
Hydration on the published site
• A > inside a style tag — React escapes it and the rule stops applying
• Quotes in server-rendered CSS that mismatch on hydration
• useId used where Framer pre-renders every breakpoint
• new Date, Math.random, window or localStorage read during render
Things that silently do nothing
• Two property controls whose titles collapse onto the same key, so one overwrites the other
• A control named width, height or style, which Framer sets itself
• A default on a Font control, which Framer ignores
• Placeholder text that comes back whenever the field is cleared
• ResizeObserver, which does not fire on the canvas
• No default canvas size, so the component lands at 200 by 200
The scan runs inside the plugin and the plugin makes no network requests — your code never leaves the project.
Free
Everything is free: every finding, every explanation, the jump to the file, one-click fixes and a Markdown report.
Honest about what it is
• It reads code, not your canvas. Design, SEO and accessibility checks are somebody else's plugin.
• A rule can be wrong about your code. Every finding can be ignored, and the ignore list is remembered.
• It cannot see Framer's effects — appear, scroll and loop are not in the plugin API.




