A lightweight content editing devtools panel for React applications
npm install content-exposeA lightweight content editing devtools panel for React applications. Edit your JSON content in real-time with live preview.
``bash`
npm install content-exposeor
pnpm add content-exposeor
yarn add content-expose
`tsx
// app/root.tsx or similar
import { initContentExpose, ContentExpose } from 'content-expose';
import rawContent from '../content.json';
// Initialize with your content
initContentExpose(rawContent);
export default function App() {
return (
<>
>
);
}
`
`tsx
// Any component
import { content } from 'content-expose';
export function Navbar() {
return ;
}
export function Footer() {
return {content.settings.company_name};
}
`
- Keyboard shortcut: Press Cmd+E (Mac) or Ctrl+E (Windows/Linux) to toggle the panel
- Live preview: Edit JSON and see changes immediately after clicking Preview
- Tabbed interface: Only shows content keys you've actually accessed
- Draggable & resizable: Position the panel wherever you want
- Export: Copy the full JSON to clipboard for easy PR creation
- Reset: Revert to original content at any time
1. initContentExpose() stores your raw content in a singletoncontent
2. The export is a Proxy that tracks which keys are accessedContentExpose` component shows tabs only for accessed content sections
3.
4. Preview stores modified content in localStorage and reloads
5. The proxy returns localStorage content when available
MIT