Debug your apps, find hydration errors, trace your network and more in your react-router app with these devtools
| Files | Last commit | Last update |
|---|---|---|
RELEASING: Releasing 1 package(s) (#263) Releases: react-router-devtools@6.2.2 [skip ci] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 3 months ago | |
ci: harden release with OIDC trusted publishing (TanStack-style, tokenless) (#258) * style: inline files array in package.json to satisfy biome The release version bump left "files": ["dist"] formatted multi-line, which biome check rejects. CI's test:ci script doesn't run biome check (only the local pre-commit hook does), so this slipped onto main. * ci: harden release with OIDC trusted publishing (no tokens), drop PAT Replaces the PAT-based approach with npm Trusted Publishing (OIDC), mirroring TanStack's release flow. This removes long-lived publishing secrets entirely and addresses the security review findings. - npm auth via OIDC: add .npmrc provenance=true + id-token:write, and remove the NPM_TOKEN secret usage. Requires a trusted publisher to be configured for react-router-devtools on npmjs.com. - Drop the RELEASE_GITHUB_TOKEN PAT; the changesets action uses only the ephemeral GITHUB_TOKEN (to open the Release PR + create GH releases). - Pin all action versions to commit SHAs (supply-chain hardening). - Guard the job to this repo + main only (covers workflow_dispatch), so a dispatch can never publish from a non-main ref or a fork. - Pin Node 24 (npm 11) so OIDC works if pnpm delegates to npm publish. - Drop unused actions:write permission; add concurrency (no cancel). - Keep workflow_dispatch as a guarded manual recovery valve. | 4 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
mascott added | 1 year ago | |
fix: declare vite-node as a dependency and support React Router 8 / Vite 8 (#261) (#262) The Vite plugin imports `vite-node` at runtime (it is marked `external` in tsup, so it stays a bare import in the published `dist`), but `vite-node` was only a devDependency. It resolved on React Router 7 purely as a phantom dependency of `@react-router/dev@7`, which declared `vite-node` itself. React Router 8 dropped `vite-node` from its dependencies, so resolution broke with `Cannot find package 'vite-node'`. - Move `vite-node` to `dependencies` (`^5.0.0 || ^6.0.0`, covering Vite 7 and 8). - Tidy the `vite` peer range to `>=5.0.0` (the `react-router` `>=7.0.0` peer already admits v8). - Add a minimal React Router 8 + Vite 8 example (`test-apps/react-router-v8-vite`) that wires the devtools plugin in by package name to exercise real consumer resolution. Verified: dev server boots cleanly, build and typecheck pass. - Align react/react-dom across the examples and docs to ^19.2.7 (RR8 floor) and pin react/react-dom via root pnpm.overrides so the shared, workspace-linked devtools package resolves a single React version (avoids an invalid-hook-call from a react/react-dom mismatch). - Ignore the intentionally-divergent v8 example in the sherif dependency check. | 3 months ago | |
RELEASING: Releasing 1 package(s) (#263) Releases: react-router-devtools@6.2.2 [skip ci] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 3 months ago | |
Feat/migrate to tanstack devtools (#236) * tanstack migration init * remove tailwind for goober * update deps * migrate to event client * make ui look much nicer on event tab * better ui * improve events screen * swap to evenets for server info * removed custom behavior and rely on tanstack devtools for open source and uses event client for route info * removed detached mode * remove hydration diff detector * remove errors tab * remove bippy * add middleware logs and events * fix bugs * update ui * ui improvements * remove settings tab * remove settings tab * cleanup of old code * add back in plugins and cleanup package exports * improve ui and logs * update docs * fix * docs(changeset): migrated to TanStack Devtools * changeset * add license * fix bugs * fix bugs * fix bugs * update docs for data mode * update styles | 10 months ago | |
RELEASING: Releasing 1 package(s) (#263) Releases: react-router-devtools@6.2.2 [skip ci] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 3 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
ci: harden release with OIDC trusted publishing (TanStack-style, tokenless) (#258) * style: inline files array in package.json to satisfy biome The release version bump left "files": ["dist"] formatted multi-line, which biome check rejects. CI's test:ci script doesn't run biome check (only the local pre-commit hook does), so this slipped onto main. * ci: harden release with OIDC trusted publishing (no tokens), drop PAT Replaces the PAT-based approach with npm Trusted Publishing (OIDC), mirroring TanStack's release flow. This removes long-lived publishing secrets entirely and addresses the security review findings. - npm auth via OIDC: add .npmrc provenance=true + id-token:write, and remove the NPM_TOKEN secret usage. Requires a trusted publisher to be configured for react-router-devtools on npmjs.com. - Drop the RELEASE_GITHUB_TOKEN PAT; the changesets action uses only the ephemeral GITHUB_TOKEN (to open the Release PR + create GH releases). - Pin all action versions to commit SHAs (supply-chain hardening). - Guard the job to this repo + main only (covers workflow_dispatch), so a dispatch can never publish from a non-main ref or a fork. - Pin Node 24 (npm 11) so OIDC works if pnpm delegates to npm publish. - Drop unused actions:write permission; add concurrency (no cancel). - Keep workflow_dispatch as a guarded manual recovery valve. | 4 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
Feat/migrate to tanstack devtools (#236) * tanstack migration init * remove tailwind for goober * update deps * migrate to event client * make ui look much nicer on event tab * better ui * improve events screen * swap to evenets for server info * removed custom behavior and rely on tanstack devtools for open source and uses event client for route info * removed detached mode * remove hydration diff detector * remove errors tab * remove bippy * add middleware logs and events * fix bugs * update ui * ui improvements * remove settings tab * remove settings tab * cleanup of old code * add back in plugins and cleanup package exports * improve ui and logs * update docs * fix * docs(changeset): migrated to TanStack Devtools * changeset * add license * fix bugs * fix bugs * fix bugs * update docs for data mode * update styles | 10 months ago | |
Feat/migrate to tanstack devtools (#236) * tanstack migration init * remove tailwind for goober * update deps * migrate to event client * make ui look much nicer on event tab * better ui * improve events screen * swap to evenets for server info * removed custom behavior and rely on tanstack devtools for open source and uses event client for route info * removed detached mode * remove hydration diff detector * remove errors tab * remove bippy * add middleware logs and events * fix bugs * update ui * ui improvements * remove settings tab * remove settings tab * cleanup of old code * add back in plugins and cleanup package exports * improve ui and logs * update docs * fix * docs(changeset): migrated to TanStack Devtools * changeset * add license * fix bugs * fix bugs * fix bugs * update docs for data mode * update styles | 10 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
changed app_url for release (#232) * changed app_url for release * small fixes --------- Co-authored-by: abrulic <almina@forge42.dev> | 10 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago | |
fix: declare vite-node as a dependency and support React Router 8 / Vite 8 (#261) (#262) The Vite plugin imports `vite-node` at runtime (it is marked `external` in tsup, so it stays a bare import in the published `dist`), but `vite-node` was only a devDependency. It resolved on React Router 7 purely as a phantom dependency of `@react-router/dev@7`, which declared `vite-node` itself. React Router 8 dropped `vite-node` from its dependencies, so resolution broke with `Cannot find package 'vite-node'`. - Move `vite-node` to `dependencies` (`^5.0.0 || ^6.0.0`, covering Vite 7 and 8). - Tidy the `vite` peer range to `>=5.0.0` (the `react-router` `>=7.0.0` peer already admits v8). - Add a minimal React Router 8 + Vite 8 example (`test-apps/react-router-v8-vite`) that wires the devtools plugin in by package name to exercise real consumer resolution. Verified: dev server boots cleanly, build and typecheck pass. - Align react/react-dom across the examples and docs to ^19.2.7 (RR8 floor) and pin react/react-dom via root pnpm.overrides so the shared, workspace-linked devtools package resolves a single React version (avoids an invalid-hook-call from a react/react-dom mismatch). - Ignore the intentionally-divergent v8 example in the sherif dependency check. | 3 months ago | |
fix: declare vite-node as a dependency and support React Router 8 / Vite 8 (#261) (#262) The Vite plugin imports `vite-node` at runtime (it is marked `external` in tsup, so it stays a bare import in the published `dist`), but `vite-node` was only a devDependency. It resolved on React Router 7 purely as a phantom dependency of `@react-router/dev@7`, which declared `vite-node` itself. React Router 8 dropped `vite-node` from its dependencies, so resolution broke with `Cannot find package 'vite-node'`. - Move `vite-node` to `dependencies` (`^5.0.0 || ^6.0.0`, covering Vite 7 and 8). - Tidy the `vite` peer range to `>=5.0.0` (the `react-router` `>=7.0.0` peer already admits v8). - Add a minimal React Router 8 + Vite 8 example (`test-apps/react-router-v8-vite`) that wires the devtools plugin in by package name to exercise real consumer resolution. Verified: dev server boots cleanly, build and typecheck pass. - Align react/react-dom across the examples and docs to ^19.2.7 (RR8 floor) and pin react/react-dom via root pnpm.overrides so the shared, workspace-linked devtools package resolves a single React version (avoids an invalid-hook-call from a react/react-dom mismatch). - Ignore the intentionally-divergent v8 example in the sherif dependency check. | 3 months ago | |
Migrate docs to our template (#221) * new docs site, migrated to pnpm and nx * remove nx * fix action * fix action * test * test * test * add .npmrc * fix rc * fix deployment * fix deployment? * fix deployment? * fix * update dockerfile * biome removed, updated pnpm version in dockerfile * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * deployment fix? * updates in yml, generate-docs, dockerfile * updates in yml, generate-docs, dockerfile * update package-json * update package-json * UI tw fixes * comments * small fix * small UI fix * UI fixes * small comment in dockerfile * UI small fix * UI fixes * small fix in docs * docs update --------- Co-authored-by: abrulic <almina@forge42.dev> | 11 months ago |
react-router-devtools

react-router-devtools 是一个开源工具包,旨在提升使用 React Router v7+(一个用于构建 Web 应用的全栈 JavaScript 框架)时的开发体验。该工具包提供了直观的用户界面,包含 活动页面、终端、设置、错误、网络 和 路由 六个标签页,以及一个名为 时间线 的侧边标签页。借助 react-router-devtools,您可以高效监控和管理 React Router v7+ 项目的各个方面,包括页面信息、URL 参数、服务器响应、加载器数据、路由等。
您还可以通过 错误 标签页追踪 hydration 问题,并通过 路由 标签页以树状/列表视图查看路由。
网络 标签页是一个强大的工具,用于追踪所有网络请求并了解底层运行情况。您可以实时查看所有请求,包括请求是否已中止、是否已缓存以及是否成功等状态。
Remix 开发工具
此仓库曾名为 remix-development-tools,但我们决定将其更名为 react-router-devtools,以更准确地反映它是适用于 React Router v7+ 的工具包,而非仅针对 Remix。
如果您需要该工具包的旧版本,可在 此处 找到。
详细文档可参见 此处。
文档
详细文档可在此处查看:
https://remix-development-tools.fly.dev/
快速开始
- 通过 npm 安装此包:
npm install react-router-devtools -D
import { reactRouterDevTools } from "react-router-devtools";
// Add it to your plugins array in vite.config.js
export default defineConfig({
plugins: [reactRouterDevTools(), reactRouter(), tsconfigPaths()],
});
好了,操作完成!
CloudFlare
如果您尝试在 CloudFlare 上启动项目,请尝试在 vite.config.js 文件的 optimizeDeps 中添加以下内容:
optimizeDeps: {
include: [
// other optimized deps
],
},
支持
如果您喜欢 react-router-devtools,不妨给仓库点个星,或者通过 Github 赞助进行捐赠。如有任何问题、意见或建议,欢迎随时联系我们!
许可证
react-router-devtools 是开源软件,基于 MIT 许可证 发布。
致谢
React Router Devtools 的灵感来源于 React Router v7,旨在为 React Router v7+ 用户提升开发体验。
欢迎探索 React Router Devtools,希望它能显著改善您的 React Router 开发流程。如果遇到任何问题或有功能增强建议,请随时在我们的 GitHub 仓库提交 issue。祝您开发愉快!
感谢
感谢所有为本项目做出贡献的开发者以及社区的支持。你们都太棒了!
谨以此献给我挚爱的妻子,以及我那“小夜猫子”Kiira——她最初通过陪伴我、充当我的“橡皮鸭”来帮助我构建这些工具,她永远是我最好的朋友。
深切缅怀我已故的祖父,他教会我要永远保持好奇、不断学习、对他人友善;也缅怀我已故的祖母,她总是鼓励我学习新事物,并为自己坚信的事情挺身而出。
Introduction
Debug your apps, find hydration errors, trace your network and more in your react-router app with these devtools
Customize your domain