npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

inertia-devtools

v0.1.0

Published

Developer tools for Inertia.js — see what happens behind every click

Readme

Inertia DevTools

In-app developer tools for Inertia.js v2.0+. See what happens behind every click.

Installation

npm install inertia-devtools --save-dev

Quick Start

With Vite (recommended)

Add the plugin to your vite.config.ts:

import { defineConfig } from 'vite'
import { inertiaDevtools } from 'inertia-devtools/vite'

export default defineConfig({
  plugins: [
    inertiaDevtools(),
    // ... other plugins
  ],
})

The plugin auto-injects devtools into your Inertia entrypoint and strips them from production builds automatically.

Without Vite

Import and initialize manually:

import { createInertiaDevtools } from 'inertia-devtools'

if (process.env.NODE_ENV === 'development') {
  createInertiaDevtools()
}

Features

Props Inspector

Browse page props in an expandable tree. Toggle byte sizes per prop.

Props Diff

Compare props between navigations. Added, removed, and changed keys are highlighted with a change count badge.

Network Tab

HTTP request/response details with Inertia protocol fields (X-Inertia, X-Inertia-Version, partial data, etc.) and inline tooltips explaining each header.

Events Timeline

Full Inertia lifecycle in chronological order:

before → start → navigate → success → finish

Includes visit options (replace, preserveState, errorBag, etc.) and expandable raw event data.

Feature Detection

Badges appear automatically for active Inertia features:

| Badge | Feature | | ------------- | ---------------------------------- | | PARTIAL | Partial reload (only / except) | | DEFERRED | Deferred props | | MERGE | Merge strategy | | DEEP MERGE | Deep merge strategy | | PREPEND | Prepend strategy | | SCROLL | Scroll regions | | ONCE | Once props | | PREFETCH | Prefetched request | | CACHED | Used prefetch cache (no XHR) | | FLASH | Flash data present | | REMEMBER | Remembered local state | | ENCRYPTED | Encrypted history | | CLEAR HISTORY | History cleared on this page |

Each badge links to the relevant documentation page.

Request Filtering

Toggle visibility by category: visits, mutations, partial, deferred, prefetch, and client-side history changes.

Copy as Markdown

Copy structured context (summary, props diff, errors, features) for GitHub issues or AI chats.

More

  • Dark/light/system theme with manual override
  • Keyboard navigation -- arrow keys to browse requests, Escape to deselect
  • Previous session -- requests from before page reload in a collapsible section
  • Draggable trigger -- floating icon with position persisted to localStorage
  • Shadow DOM isolation -- styles never leak into your app
  • Framework agnostic -- works with React, Vue, and Svelte

Options

createInertiaDevtools({
  styleNonce: 'abc123', // CSP nonce for Shadow DOM styles
  enabled: true, // set to false to disable
  docsProvider: 'inertiajs', // or 'inertia-rails'
})

How It Works

Listens to Inertia DOM events and correlates them into request records. Intercepts XHR/fetch for network data and the history API for client-side visits.

The UI renders inside a Shadow DOM -- your app styles are never affected. State is kept in a bounded buffer (200 requests max).

Requirements

Development

npm install
npm test
npm run build

License

MIT