Manages DevTools with Node V8 Inspector (node --inspect) Debugging Workflow
By installing you are agreeing to:
PRIVACY POLICY - https://app.termly.io/document/privacy-policy/04164179-f943-4e87-ac8b-5afd0367dc6c
PLEASE NOTE: Installing this via the Chrome Web Store does require the sharing of your email address with me (and only me). You are given notice of this via the webstore, but it's become and remains such an issue that I feel the need to make it OVER-abundantly clear. If you take issue with sharing your email address with me (mine is [email protected] by the way) please, I implore you to clone/fork a copy yourself and change what you don't like about the code and/or use alternate solutions (none of which are as good as NiM, but call me biased). Further feel free to contact me directly and have a chat. Unlike the behemoths like Facebook, Google, Amazon that you probably (and without hesitation) share your email address with, I actually care about the concerns of the actual people who choose to use the code I wrote (~99%) and am responsible for. Here is the privacy policy that goes along with NiM https://june07.com/privacypolicy. Thank you so much.
This Chrome Extension streamlines your Node.js development cycle when using Chrome DevTools.
NiM provides extended capabilities even compared with the new chrome://inspect option. Check out what Paul Irish of the Google Chrome team wrote about NiM... https://twitter.com/june07t/status/861664828909264896.
NiM manages the Chrome DevTools window/tab life-cycle leaving you with more ability to focus on what matters... debugging your code. You no longer need to copy/paste DevTools URL's or continue opening/closing tabs/windows.
NiM automatically detects the URL that is generated when running node (locally or remotely) with --inspect option. NiM provides you with the option of automatically opening and closing Chrome DevTools in a tab or window. Just toggle the Manual/Auto setting and then start a debugging session. DevTools will open either on clicking the "Open DevTools" button or after the specified timeout period. If set to auto close, once you end your debugging session, DevTools will close automatically.
Use in 2 easy steps:
1. Install
2. Run node with --inspect flag (i.e. node --inspect hello.js)
Features:
- Manage and monitor Node Diagnostics and Reports
- Manage and monitor local and remote debugging sessions
- Manual or automatic control of DevTools interface
- Open DevTools in a new tab or window
- Make DevTools focused or inactive on start
- Customize duration between v8 Inspector probes
- Auto-save settings
- Set custom DevTools bundle
- Debug node processes launched by VSCode
Note: By it's nature this extension requires permissions which
"Read and change all your data on the websites you visit"
Further to better serve and understand my user base the following permission is asked
"Know your email address"
The following URL will provide what I feel to be an informed viewpoint on the whole matter of permissions: https://palant.de/2016/07/02/why-mozilla-shouldn-t-copy-chrome-s-permission-prompt-for-extensions
No information will ever be shared with 3rd parties. Further the source is open and available on GitHub. However should you still prefer it, a version is available which does not require sharing your email address: https://june07.com/NiM11. I will maintain the code (bug fixes), however feature additions will only be made to this branch. Please feel free to reach out to me [email protected] if you have any other concerns as I am open to discussion. Should any policies change there will be notice given of such changes.
At the time of writing, the v8 --inspect option is fairly new. See https://nodejs.org/api/debugger.html#debugger_v8_inspector_integration_for_node_js for additional details on the option.d
If you enjoy using NiM please give us a 5 star rating and/or a G+1. Any and all feedback is encouraged and welcome. [email protected] Thank you in advance.
This project is open source and available at https://github.com/june07/NiM.
Latest reviews
- (2023-02-03) Clifton Collins: Wow. The easiest way to get debugging started. I Love how the folder is already selected when the debugger automatically launches with the node app browser.
- (2021-09-28) A B: Very cool extension. Prefer it over paid solutions and suggest it to co-workers :) Thanks you, Folks!
- (2021-03-28) Taoh Green: Can't work without it. Amazing!
- (2020-08-02) Johnny George: Hey there! Brand new user, but I just wanted to say thank you for this! I've been searching for months for a solution to my chrome debugger not working anymore and stumbled upon a github thread where someone posted this extension as a possible fix, and lo and behold it is! Again, thank you so much for putting this out here!
- (2020-07-16) Prakash Gp: Is there any way i can debug network requests ??
- (2020-04-02) Michael Quad: a peice of art, that's it
- (2020-01-20) Андрій Кукуруза: Very useful!
- (2020-01-09) Sebastien Lapratte: Very usefull! Thanks for you great work!
- (2019-12-27) aaliyah: Very useful extension!
- (2019-12-26) Owen Luke: Great job!
- (2019-12-20) Suneil Nyamathi: I keep getting notifications from this plugin even though I've opted out in the settings.
- (2019-10-29) John Magdy (Zorono): Good one but it makes me crazy when it duplicated that `Node.JS DevTools` Tab more than 40 times in minute... please do something in that :( and please can anyone explain why do it need `Viewing my Email Address` Permission ??? (i couldn't find any reason for that... on my opinion at least)
- (2019-08-14) 青山正太郎: Thank you!
- (2019-05-22) It's just awesome, feeling like at the top of the mountains using it.
- (2019-04-08) Денис Авілов: Such a useful extension which gets you rid of annoying routine actions each time you run a nodejs script.
- (2019-01-08) Bruce: Great job! I'm using nodemon. The problem I'm having is that the UUID in inspector's URL changes on every restart. This plugin solves this problem perfectly.
- (2018-12-08) Hector Bas: I just got to say, such a simple add-on that is gonna resolve SOOO many headaches. Luckily for me I am at the beginning of the road in setting up a new scripting environment with ClearScript. My whole reasoning for using this engine was 1) we are .NET developers & 2) the support of Google's scripting engine, V8. When it comes to javascript and debugging, Google's dev tools are just unparalleled. Easy to use AND we don't have to use a custom debugging tool for that one off project. Naturally, as I am investigating this new tool, I came across the ability to attach CDT as a debugger, but the process to get it attached was slightly tedious. One of the first solutions I cam across was this chrome extension. Initially I ignored it, since it was clearly advertised for Node.js. However I wanted to see what kind of options could be specified, and man was it easy to configure it for my use case. The only "special" thing I really had to do was change the DevTools url/version in options to point to: "chrome-devtools://devtools/bundled/inspector.html". Afterwards, it worked flawlessly. A few things I would recommend to the extension developer: 1) I'd highly recommend stating somewhere clearly in the description for support of other such tools such as ClearScript, I almost skipped out on this gold mine 2) Potential support for specifying multiple host and port profiles with a naming scheme and active Boolean flag? 3) An option to auto-launch the debugger for an X amount of time from the point of enabling OR if now launch after X time then auto-disable untill manually re-enabled. This would be to prevent unintended attachments (scenario for multiple developers who work on the same set of remote servers) and just have a smooth debugging experience for the time allotted. Perhaps change the color of the logo in the quick launch bar to indicate that it is not actively monitoring. 4) Would it be possible for you to tell CDT to automatically pause execution upon load? If not, not a huge big deal as it seems most of these engines have flags for this type of scenario to make sure that you don't miss any script execution. Overall, fantastic job!
- (2018-11-20) Although the automatically opening of the devtools is very usefull i think it's very annoying that it opens in a window with tabs instead of a headless window like devtools usually has, i'm on chrome 70 if that may have anything to do with it
- (2018-09-20) Gregg Tavares: There is no defensible reason to have to provide an email address. node does not require an email address, chrome does not require an email address, clang does not require an email address.
- (2018-08-20) Fernando Catacora: Man, this tool is super useful, thanks!!
- (2018-06-20) Fatih Kaya: Thank you for this awesome extension. It helped me a lot.
- (2018-05-08) 林乐扬: If could auto connect muti node instance would be better. Now the network tab has no cascade folder structure.
- (2018-04-15) Giovanni Viola: Great! Easy and powerful debug
- (2018-04-05) Joshua Newton: OMG. Where has this been my entire life. Literally closing the devtools tab over and over to watch it magically re-open. No more manually copying debug urls out of my docker logs!!!!
- (2018-03-23) Fabio Spampinato: This is one of those things you wish you knew about 2 years ago, greatly recommended!
- (2018-02-05) Alan Clelland: Works ok but I need to manually enter the server IP every time. If I set the IP to, for example, 1.1.1.1 and then click "launch dev tools" a new Tab will open but the ws= parameter will be set to the remote servers local network IP (ie, 192.168.1.1.) rather than the one I told NiM to use.
- (2018-01-27) Allan Dy: Love it but I cannot seem to turn off the make tab active option. Its off but still decides to set focus while Im using nodemon.
- (2017-11-06) 张一舟: 有用,不过我要提一个issue。 这个插件会不断像localhost:8080请求/json 导致我在一个项目中使用8080做代理服务器时遇到频繁的不明请求。为了找到这个问题我用了各种抓包工具和网络命令,还有一到两天的开发时间。 作为开发者还是很容易把8080作为本地mock server的端口号的,也许插件可以再改进一下。
- (2017-10-27) Denni Adam: Спасибо за плагин! Очень удобно!
- (2017-10-10) Jt: Even after specifying ip address and port where NodeJS app is hosted, this plugin is unable to inspect the app. Anything else I need to take care of?
- (2017-10-04) James Santos: Suddenly consumes 90% of my CPU on Mac. It's a great extension but I can't say if it's safe to use.
- (2017-09-25) MJ Abadilla: This will definitely save us time. Thank you!
- (2017-09-01) Jakob Anderson: This fixed a frustrating painpoint for my node dev workflow. So grateful.
- (2017-07-20) Tyson Acker: Only started using this extension recently, but already can't imagine building Node apps without it!
- (2017-07-09) Niall O'Callaghan: Amazing.
- (2017-07-07) H Y: very good