[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10137":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":21,"defaultBranch":22,"hasWiki":20,"hasPages":21,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":16,"starSnapshotCount":16,"syncStatus":30,"lastSyncTime":31,"discoverSource":32},10137,"ndb","GoogleChromeLabs\u002Fndb","GoogleChromeLabs","ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools","",null,"JavaScript",10875,241,3,53,0,1,42.15,"Apache License 2.0",true,false,"master",[24,25,26],"debugging","devtools","nodejs","2026-06-12 02:02:17","# ndb\n\n\u003C!-- [START badges] -->\n[![Build Status](https:\u002F\u002Fimg.shields.io\u002Ftravis\u002Fcom\u002FGoogleChromeLabs\u002Fndb\u002Fmaster.svg)](https:\u002F\u002Ftravis-ci.com\u002FGoogleChromeLabs\u002Fndb)\n[![NPM ndb package](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fndb.svg)](https:\u002F\u002Fnpmjs.org\u002Fpackage\u002Fndb)\n\u003C!-- [END badges] -->\n\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FChromeDevTools\u002Fdevtools-logo\u002Fmaster\u002F192.png\" height=\"200\" align=\"right\">\n\n> ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools\n\n## Installation\n\nCompatibility: ndb requires Node >=8.0.0. It works best with Node >=10.\n\nInstallation: ndb depends on [Puppeteer](https:\u002F\u002Fgithub.com\u002FGoogleChrome\u002Fpuppeteer) which downloads a recent version of Chromium (~170MB Mac, ~280MB Linux, ~280MB Win).\n\n```bash\n# global install with npm:\nnpm install -g ndb\n\n\n# alternatively, with yarn:\nyarn global add ndb\n```\n\nGlobal installation may fail with different permission errors, you can find help in this [thread](https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fndb\u002Fissues\u002F20).\n\nWindows users: Installation may fail on Windows during compilation the native dependencies. The following command may help: `npm install -g windows-build-tools`\n\n### Local install\n\nIf you want ndb available from an npm script (eg. `npm run debug` runs `ndb index.js`), you can install it as a development dependency:\n\n```bash\n# local install with npm:\nnpm install --save-dev ndb\n\n\n# alternatively, with yarn:\nyarn add ndb --dev\n```\n\nYou can then [set up an npm script](https:\u002F\u002Fdocs.npmjs.com\u002Fmisc\u002Fscripts#examples). In this case, ndb will not be available in your system path.\n\n\n## Getting Started\n\nYou can start debugging your Node.js application using one of the following ways:\n\n- Use `ndb` instead of the `node` command\n\n```bash\nndb server.js\n\n# Alternatively, you can prepend `ndb`\nndb node server.js\n```\n\n- Prepend `ndb` in front of any other binary\n\n```bash\n# If you use some other binary, just prepend `ndb`\n## npm run unit\nndb npm run unit\n\n# Debug any globally installed package\n## mocha\nndb mocha\n\n# To use a local binary, use `npx` and prepend before it\nndb npx mocha\n```\n\n- Launch `ndb` as a standalone application \n   - Then, debug any npm script from your `package.json`, e.g. unit tests\n\n```bash\n# cd to your project folder (with a package.json)\nndb .\n# In Sources panel > \"NPM Scripts\" sidebar, click the selected \"Run\" button \n```\n\n- Use `Ctrl`\u002F`Cmd` + `R` to restart last run\n- Run any node command from within ndb's integrated terminal and ndb will connect automatically\n- Run any open script source by using 'Run this script' context menu item, ndb will connect automatically as well\n\n- Use `--prof` flag to profile your app, `Ctrl`\u002F`Cmd` + `R` restarts profiling\n```bash\nndb --prof npm run unit\n```\n\n## What can I do?\n\n`ndb` has some powerful features exclusively for Node.js:\n1. Child processes are detected and attached to.\n1. You can place breakpoints before the modules are required.\n1. You can edit your files within the UI. On Ctrl-S\u002FCmd-S, DevTools will [save the changes to disk](https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Ftools\u002Fchrome-devtools\u002Fworkspaces\u002F).\n1. By default, ndb [blackboxes](https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Ftools\u002Fchrome-devtools\u002Fjavascript\u002Freference#blackbox) all scripts outside current working directory to improve focus. This includes node internal libraries (like `_stream_wrap.js`, `async_hooks.js`, `fs.js`) This behaviour may be changed by \"Blackbox anything outside working dir\" setting. \n\nIn addition, you can use all the DevTools functionality that you've used in [typical Node debugging](https:\u002F\u002Fmedium.com\u002F@paul_irish\u002Fdebugging-node-js-nightlies-with-chrome-devtools-7c4a1b95ae27):\n- breakpoint debugging, async stacks (AKA long stack traces), [async stepping](https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fupdates\u002F2018\u002F01\u002Fdevtools#async), etc...\n- console (top-level await, object inspection, advanced filtering)\n- [eager evaluation](https:\u002F\u002Fdevelopers.google.com\u002Fweb\u002Fupdates\u002F2018\u002F05\u002Fdevtools#eagerevaluation) in console (requires Node >= 10)\n- JS sampling profiler\n- memory profiler\n\n### Screenshot\n![image](https:\u002F\u002Fuser-images.githubusercontent.com\u002F39191\u002F43023843-14a085a6-8c21-11e8-85b7-b9fd3405938a.png)\n\n\n## Contributing\n\nCheck out [contributing guide](https:\u002F\u002Fgithub.com\u002FGoogleChromeLabs\u002Fndb\u002Fblob\u002Fmaster\u002FCONTRIBUTING.md) to get an overview of ndb development.\n\n#### Thanks to the 'OG' `ndb`\n\nIn early 2011, [@smtlaissezfaire](https:\u002F\u002Fgithub.com\u002Fsmtlaissezfaire) released the first serious debugger for Node.js, under the `ndb` package name. It's still preserved at [github.com\u002Fsmtlaissezfaire\u002Fndb](https:\u002F\u002Fgithub.com\u002Fsmtlaissezfaire\u002Fndb#readme). We thank Scott for generously donating the package name.\n","ndb 是一个通过 Chrome DevTools 提供的增强版 Node.js 调试工具。它支持断点设置、子进程检测与自动连接，并允许在调试界面内直接编辑文件，这些功能极大地提升了开发者的调试效率。基于 Puppeteer 技术，ndb 可以启动一个 Chromium 实例来运行你的应用，从而利用 Chrome 的强大调试能力。适用于需要深入分析和调试复杂 Node.js 应用的场景，特别是当项目涉及多进程或模块加载时。对于希望提高调试体验的 Node.js 开发者来说，ndb 是一个非常有价值的选择。",2,"2026-06-11 03:26:46","top_topic"]