This tool works with both Expo and React Native CLI projects. Just install and go.
See your layout instead of guessing at it. Debug Borders draws colored borders and labels over your running app, then lets you tap any label to inspect the component underneath — its testID, styles, position, and accessibility info — without leaving the device.
npm install @buoy-gg/debug-bordersThat's it. Debug Borders appears in your FloatingDevTools menu.
Tap the BORDERS icon in the floating menu to cycle through modes:
| Mode | What you see |
|---|---|
| Off | Nothing — zero overhead |
| Borders | Rainbow-colored borders on every component, colored by depth in the tree |
| Labels | Borders + labels, but only for components with a testID or accessibilityLabel |
Borders are touch-through — they never interfere with interacting with your app — and they track layout changes automatically.
Labels mode filters the noise down to components you've actually identified:
Tap any label to open a full inspection modal for that component:
Perfect for answering "what testID does QA need for this button?" or "which component owns this padding?" straight from the device.
Want your own naming or colors? Build the tool with createDebugBordersTool:
import { createDebugBordersTool } from "@buoy-gg/debug-borders";
const layoutTool = createDebugBordersTool({
name: "LAYOUT",
description: "Layout visualizer",
offColor: "#9ca3af",
bordersColor: "#ec4899",
labelsColor: "#8b5cf6",
id: "custom-borders",
});
import { createDebugBordersTool } from "@buoy-gg/debug-borders";
const layoutTool = createDebugBordersTool({
name: "LAYOUT",
description: "Layout visualizer",
offColor: "#9ca3af",
bordersColor: "#ec4899",
labelsColor: "#8b5cf6",
id: "custom-borders",
});
Pass it to FloatingDevTools via the apps array and it replaces the default preset.