Web Worker Heavy Task Demo - Online NonâBlocking
Run a CPUâheavy calculation (e.g., prime numbers) in a Web Worker and see the UI stay responsive. Code snippet provided.
UD5 Toolkit
Real-time monitoring of long tasks (>50ms) to identify INP bottlenecks
Total Long Tasks
Total Blocking Time
Average Duration
Longest Task
INP Risk Level
| # | Time (s) | Duration | Blocking | Severity | Source | Attribution | Detected At |
|---|---|---|---|---|---|---|---|
| Start monitoring to detect long tasks | |||||||
PerformanceObserver with entryType: 'longtask') allows developers to detect these problematic tasks programmatically.
duration - 50ms (the amount exceeding the 50ms threshold). TBT is the sum of all these blocking portions. For example, if you have two long tasks of 120ms and 80ms, the TBT is (120-50) + (80-50) = 70 + 30 = 100ms. TBT strongly correlates with INP and is a key metric in Lighthouse performance audits.
setTimeout or scheduler.postTask(): Yield control to the browser by breaking long operations into smaller tasks.defer or dynamic imports.requestAnimationFrame for visual updates and batch DOM changes.PerformanceObserver observing 'longtask') is a specification that is currently only implemented in Chromium-based browsers (Google Chrome, Microsoft Edge, Opera, Brave, etc.). Firefox and Safari have not yet implemented this API. If you're using a non-Chromium browser, consider using Chrome or Edge to run this tool, or use the "Simulate Long Task" feature to test the tool's functionality with artificial long tasks.
requestAnimationFrame callback to determine when the browser paints. While this accurately demonstrates the relationship between long tasks and interaction delays, real-world INP is measured over many interactions and uses a more sophisticated methodology. Use this simulation to understand the concept, but always verify with real user monitoring (RUM) data for production insights.
Run a CPUâheavy calculation (e.g., prime numbers) in a Web Worker and see the UI stay responsive. Code snippet provided.
Demonstrate how to yield heavy computation to user input using the isInputPending API. Keep UI responsive.
Drag tasks into a 2x2 grid (Urgent vs. Important or Impact vs. Effort). Visual decision aid. Local.
Create halfâhour time blocks for your day. Drag to resize and reorder. Export as image. All local.
Build <link> tags for preload, prefetch, preconnect, and dnsâprefetch. Improve page load speed with correct priorities. Copy the optimized HTML.
Repeat the growing color sequence. How far can you go? Classic memory game with sound and animations.
Divide your day into blocks with color codes. Drag tasks into slots. See free time at a glance.
Fill in daily work hours and tasks, and generate a printable PDF timesheet. Clean, professional layout. Local.
Paste a corpus of text and generate new random sentences that mimic the style using Markov chains. Local only.
Paste a git log and generate a polished changelog grouped by type (feat, fix, etc.). Follows Keep a Changelog format. Local.
Decode Base64 encoded strings back into viewable images and download them as PNG. Useful for debugging APIs and data URIs. Secure local processing.
Set up resources and processes and run the Banker's algorithm to check for safe states. Classic OS deadlock avoidance demo.
Visualize random-width plank layout and calculate total square footage plus waste for hardwood or laminate flooring.
Enter a cron expression and get a plain English description of when it runs. Understand complex schedules instantly. Developer friendly.
Use your microphone to dictate text and see it appear live. Also upload an audio file for transcription (limited). All local.
Use your microphone to dictate text and see it appear live. Also upload an audio file for basic transcription. All local.
Take a normal sentence and reverse the word order. Sound like Yoda or just play with language.
Create multiâstep keyframe animations by adding stops and properties. Play and pause. Copy the complete CSS. Intuitive UI.
Reâorder words to sound like Master Yoda. Not perfect, but amusing, this tool is. Local and quick.
Create CSS animations and transitions without coding. Define keyframes, easing, and duration. Copy the @keyframes and animation code instantly.
Enter a hexadecimal string and decode it as a 32âbit or 64âbit floatingâpoint number. Lowâlevel developer tool.
Use the document.fonts API to check if a font is loaded. Watch the ready promise. Avoid FOUT. JavaScript demo.
Convert units of force: Newton, kilonewton, pound-force, dyne. Handy for physics homework and engineering. Private, no upload.
Try the experimental masonry layout in CSS Grid (enabled via flag). See how items flow. Copy the code. For cuttingâedge browsers.
Toggle browserâgenerated bold and italic when a real italic is missing. Understand and control font fallback rendering.
Paste Pug template code and compile it to HTML. See the rendered output instantly. For static site devs.
Click for an endless stream of random dad jokes and puns. Copy and share. Guaranteed to make you groan. All local.
Build a responsive masonry layout using the columnâcount property. No JavaScript. Copy the minimal CSS.
Toggle contentâvisibility: auto on long blocks and see the rendering time difference. Understand this powerful property.
Test how `contentâtype: text/html` vs `contentâtype: image/svg+xml` affects SVG rendering in the browser. Modern performance hint.