Reveal active or passed timeouts, intervals, and eval invocation call stacks. Observe events and properties of media elements

Latest Version

Version
1.0.6
Update
October 14, 2024
Size
86.9KiB
Developer
Category
Users
36
Rating
1 ★
Manifest Version
3
Web Store Status
Languages Support
English
See more
Permissions
Storage
See more

API Monitor Extension

Whether you're developing a Single Page Application (SPA) and want to assess implementation correctness or are curious about how something works, this tool adds additional functionality to the Chrome browser DevTools to reveal timeouts, intervals, idle callbacks, animation frames and `eval` usages while mapping their invocation call stacks to a source code location. If the page has mounted video or audio media element's, their events and property state changes can be observed as they happen.

Wrapped native functions:
- eval
- setTimeout/clearTimeout
- setInterval/clearInterval
- requestAnimationFrame/cancelAnimationFrame
- requestIdleCallback/cancelIdleCallback
- video/audio events&props

Motivation:
- To expedite issues discovery, here are some examples from experience:

* A ~10ms delay interval constantly consuming approximately 10% of CPU from a third-party library, solely to check if the page was resized.
* A bundled dependency library that utilizes the eval function, thereby preventing the removal of unsafe-eval from the Content Security Policy (CSP) header. It can be arguably intentional, but also may reveal a configuration issue when the package was bundled with webpack config's devtool: 'eval' in production mode.
* A substantial number of hidden video elements in the DOM that were consuming resources, unexpectedly limited to 100 medias per domain.
* An unattended interval that was unintentionally left running and contributed to a slowly growing memory.

- To explore the internals of a complex systems.

Source code: https://github.com/zendive/browser-api-monitor
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx", "version": "1.0.6", "name": "API Monitor", "manifest_version": 3, "description": "Reveal active or passed timeouts, intervals, and eval invocation call stacks. Observe events and properties of media elements", "minimum_chrome_version": "122.0", "homepage_url": "https://github.com/zendive/browser-api-monitor", "author": "[email protected]", "permissions": ["storage"], "host_permissions": ["*://*/*"], "devtools_page": "public/api-monitor-devtools.html", "icons": { "28": "public/img/panel-icon28.png", "64": "public/img/panel-icon64.png", "128": "public/img/panel-icon128.png" }, "content_scripts": [ { "world": "MAIN", "js": ["public/build/api-monitor-cs-main.js"], "matches": [""], "match_origin_as_fallback": true, "all_frames": false, "run_at": "document_start" }, { "js": ["public/build/api-monitor-cs-isolated.js"], "matches": [""], "match_origin_as_fallback": true, "all_frames": false, "run_at": "document_start" } ]}
Read more

How to download and manually install API Monitor extension for Chrome

Looking for a way to install API Monitor extensions for Chrome, you can search for them in the Chrome Web Store, clicking the "Add to Chrome" button, and following the straightforward process.

However, you may need to install API Monitor extensions manually, this article outlines two simple methods to effortlessly install API Monitor extensions, whether they come as unpacked folders in compressed formats like .zip or as .crx files.

Method 1: Download API Monitor extension and manually install through Drag &Drop

If you ever need to manually install a API Monitor extension for Chrome, don't worry, it's a simple process. Just follow these easy steps, and you will have your extension ready to use in no time.

Step 1: Download the API Monitor Extension by clicking the "Download CRX" button on the website.

Look for the API Monitor extension you wish to install. Go to the website and download the API Monitor extension package, which is usually a .CRX file and comes in a zipped file. Here ".crx" file is the format for API Monitor extension that contains all the data.

Step 2: Extract &Arrange Files

Once the file is downloaded, extract that file into its own folder. Similarly, give that extension files a permanent home. In other words, keep it in a folder that you don't accidentally delete it because these files will be needed to make that extension work.

Step 3: Go to the Chrome Extensions Page

Open Google Chrome and in the address bar, type chrome://extensions; it will open the Google Chrome extensions page. Make sure that "My extensions" is selected in the sidebar.

Step 4: Drag and Drop the Extension

Now, go to the folder where you extracted the API Monitor extension and drag &drop the extension file from there anywhere onto the extension page within Google Chrome.

Step 5: Complete the Installation

Once you drag and drop the extension file, follow the steps that Google Chrome takes you through. Similarly, if the extension file is of .crx file format, you will be required to review the permissions and then add the extension.

Now, you can manage that added extension as you would like to with any other Chrome extension that you added through Chrome Webstore. Its icon will also appear in the Google Chrome Menu on the right side of the address bar once you activate it.

Method 2: Download API Monitor extension for Chrome and install in Developer Mode

This is another method to install API Monitor extension manually, but the twist is that here, you install by enabling the developer mode option provided in Google Chrome. This mode is commonly used for testing extensions or running unpublished tools.

Step 1: Download the API Monitor extension file

Select and download the API Monitor extension by clicking the 'Download CRX' button on the website.

Step 2: Extract the downloaded contents

Convert the file to a ZIP file if it is in CRX format then extract the API Monitor extension zip file or folder that you downloaded. Make sure you extract it using the same folder name and keep it safely in another folder, so you don't delete it by mistake. The extracted folder will be needed to keep your API Monitor extension running.

Step 3: Open Chrome Extension Setting Page

In the address bar of Google Chrome, type chrome://extensions and open the Chrome Extension Page.

Step 4: Enable Developer Mode

After opening the Chrome Extension page, look at the top right side, and you will find the toggle option of "Developer mode."Simply enable that developer mode option.

Step 5: Load the Unpacked Extension

Once you enable the developer mode option, you will see the menu of Load Unpacked, Pack Extensions and Update. From that, select the option "Load unpacked."

Step 6: Select the Extension Folder

Once the pop-up opens upon clicking Load unpacked, select the API Monitor extension directory and click on the "Select Folder "button.

Step 7: Confirm and Install

After you select an extension folder of a Google Chrome extension you're installing manually, confirm its installation for the final time and let the installation complete.

Conclusion

Here we've made a step-by-step guide on How to manually install API Monitor extension in 2 ways. We hope this guide proves helpful.

Similar Extensions

icon

ChatGPT UI Preview Extension · Developer Tools 36 3 ★ 59.89KiB

icon

HTTP-TRACKER Extension · Developer Tools 36 33 ★ 85.4KiB

icon

ModResponse - Mock and replay API Extension · Developer Tools 36 23 ★ 454KiB

icon

Get That API Extension · Developer Tools 36 2 ★ 80.25KiB

icon

API Trace Extension · Developer Tools 36 2 ★ 43.22KiB

icon

Rest API Inspector Extension · Developer Tools 36 6 ★ 365KiB

icon

Inspect API calls Extension · Developer Tools 36 0 ★ 58.93KiB

icon

XHR Request Interceptor Extension · Developer Tools 36 0 ★ 574KiB

icon

API Hunt Extension · Developer Tools 36 1 ★ 2.77MiB

icon

WebAPI Blocker Extension · Productivity 36 8 ★ 58.61KiB

icon

GPT Finder & Helper Extension · Productivity 36 0 ★ 47.85KiB

icon

HTTP Headers Extension · Developer Tools 36 12 ★ 35.46KiB

icon

Parrot API mocking Extension · Developer Tools 36 5 ★ 3.6MiB

icon

API Recorder Extension · Developer Tools 36 0 ★ 1.69MiB

icon

Kopyst Simplifies Video & Document Creation Extension · Productivity 36 11 ★ 5.84MiB

icon

API Interceptor Extension · Developer Tools 36 1 ★ 2.4MiB

icon

BLOCKoli - Web request blocker Extension · Productivity 36 0 ★ 1.8MiB

icon

Sitemap Scraper Extension · Productivity 36 1 ★ 19.37KiB

icon

Local Storage Explorer Extension · Developer Tools 36 1 ★ 20.14KiB

icon

ModBox – Modify headers, block requests Extension · Developer Tools 36 9 ★ 102KiB

icon

gRPC Web Devtools Extension · Developer Tools 36 5 ★ 999KiB

icon

ChatGPT Automatically 'Continue generating' with Completion Notification Extension · Productivity 36 5 ★ 354KiB

icon

JSON Formatter for API Extension · Developer Tools 36 1 ★ 55.46KiB

icon

Hidden APIs Extension · Productivity 36 0 ★ 137KiB