Install & Compatibility
Where this runs
No compatibility data collected yet for this library.
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
installFetchLogger
✓ import { installFetchLogger } from 'next-fetch-devtools/server'
✗ import { installFetchLogger } from 'next-fetch-devtools'; or const { installFetchLogger } = require('next-fetch-devtools/server')
Server-side function; import from the /server subpath. Not available in client bundle.
DevtoolsPanel
✓ import { DevtoolsPanel } from 'next-fetch-devtools/client'
✗ import { DevtoolsPanel } from 'next-fetch-devtools'; or const DevtoolsPanel = require('next-fetch-devtools/client')
Client component; import from the /client subpath. Only render in development.
createDevtoolsRoute
✓ import { createDevtoolsRoute } from 'next-fetch-devtools/server'
✗ import { createDevtoolsRoute } from 'next-fetch-devtools'; or require('next-fetch-devtools/server')
Server-side route handler; import from the /server subpath.
attachAxiosLogger
✓ import { attachAxiosLogger } from 'next-fetch-devtools/server'
✗ import attachAxiosLogger from 'next-fetch-devtools/server'; or require('next-fetch-devtools')
Named export from /server subpath.
Setup steps: install server logger, create API route, and render client panel.
// 1. Create lib/devtools-setup.ts:
import { installFetchLogger } from 'next-fetch-devtools/server';
installFetchLogger({ enabled: process.env.NODE_ENV === 'development' });
// 2. Import it in app/layout.tsx (at top):
import 'lib/devtools-setup';
// 3. Create app/api/__devtools/fetches/route.ts:
import { createDevtoolsRoute } from 'next-fetch-devtools/server';
const handlers = createDevtoolsRoute();
export const GET = handlers.GET;
export const DELETE = handlers.DELETE;
export const dynamic = 'force-dynamic';
// 4. Add panel in layout:
import { DevtoolsPanel } from 'next-fetch-devtools/client';
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html>
<body>
{children}
{process.env.NODE_ENV === 'development' && <DevtoolsPanel apiBase={process.env.NEXT_PUBLIC_API_BASE_URL ?? ''} />}
</body>
</html>
);
}
Errors
Common errors & fixes
Cannot find module 'next-fetch-devtools' or its corresponding type declarations.
Missing subpath import; root-level exports removed.
fixUse 'next-fetch-devtools/server' or 'next-fetch-devtools/client'.
Unhandled Runtime Error: TypeError: installFetchLogger is not a function
Incorrect import path or ESM/CJS mismatch.
fixEnsure you use `import { installFetchLogger } from 'next-fetch-devtools/server'`. Error: Dynamic server usage: Route /api/__devtools/fetches is being built and tested.
Route is not marked as dynamic and gets cached.
fixExport `export const dynamic = 'force-dynamic'` from the route file.
Error: Cannot read properties of undefined (reading 'useState')
DevtoolsPanel used in a server component or without 'use client'.
fixImport DevtoolsPanel from 'next-fetch-devtools/client' and use it in a client component.
Audit
Dependencies
nextrequiredpeer dependency >=13 required for App Router features
reactrequiredpeer dependency >=18 required for hooks and components