A Chrome DevTools extension for inspecting, mocking, and managing Apollo Client cache in real-time.
Cache Viewer - Browse all Apollo Client cache entries in a structured tree view. Search, filter, expand nested objects, and inspect references. Edit values inline or evict individual entries.
Fragment Composer - Build GraphQL fragments visually with full schema awareness. Select types from the schema explorer sidebar, fill in field values with smart inputs, and write mock data directly to the cache.
Schema Explorer - Auto-introspects your GraphQL schema via Apollo Client or manual endpoint configuration. Browse types, fields, enums, and unions in a collapsible sidebar.
Presets - Save cache mock configurations as reusable presets. Export/import presets as JSON to share with your team. Apply presets with one click to restore cache states.
Auto-detection - Automatically detects Apollo Client instances on the page, including apps using connectToDevTools, __APOLLO_CLIENT__, and the Apollo DevTools symbol.
Install from the Chrome Web Store.
-
Clone the repository:
git clone https://github.com/topolanekmartin/apollo-cache-manager.git cd apollo-cache-manager -
Install dependencies and build:
bun install bun run build
-
Open Chrome and navigate to
chrome://extensions -
Enable Developer mode (toggle in the top right)
-
Click Load unpacked and select the
dist/folder -
Open DevTools (F12) on any page with Apollo Client - you'll see the Apollo Cache Manager tab
- Open DevTools on a page that uses Apollo Client
- Navigate to the Apollo Cache Manager tab
- The Cache tab shows all current cache entries - click any entry to expand and inspect
- Switch to the Mock tab to create mock data using the fragment composer (schema auto-introspects)
- Use the Presets tab to save and restore cache configurations
- Bun (v1.0+) or Node.js (v18+)
# Clone the repo
git clone https://github.com/topolanekmartin/apollo-cache-manager.git
cd apollo-cache-manager
# Install dependencies
bun install
# Start development build (watches for changes)
bun run dev
# Production build
bun run build
# Build Chrome Web Store ZIP
bun run build:zip
# Type checking
bun run typecheckThe extension follows a multi-layer Chrome Extension (MV3) architecture:
Panel (React UI) <-> Background (Service Worker) <-> Content Script <-> Injected Bridge <-> Apollo Client
- Panel (
src/panel/) - React UI with Tailwind CSS, runs in DevTools - Background (
src/background/) - Service worker routing messages between panel and content scripts - Content (
src/content/) - Relays messages between the injected script and the extension - Injected Bridge (
src/injected/) - Runs in the page's MAIN world with direct Apollo Client access
- React 19, TypeScript 5.7, Tailwind CSS 4, Vite 6
- GraphQL (introspection & fragment parsing)
- Chrome Extension APIs (Manifest V3)
Contributions are welcome! Please read the Contributing Guide before submitting a PR.
MIT - Martin Topolanek