Cache Storage Viewer - Online Inspect Cache API
List cached responses for your domain. View headers, content, and delete individual entries. Understand your PWA's cache.
UD5 Toolkit
📜 Demo Content — Scroll down inside this box
This is a demonstration area. On a real page, the monitor tracks window.scrollY and window.scrollX globally. Scroll this page up and down to see the values change live.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet.
🔍 Tip: Scroll the main page now and watch the numbers update in real-time above!
scrollTop / scrollY?
scrollTop (or window.scrollY) represents the number of pixels the document has been scrolled vertically from the top. It's the distance between the top edge of the viewport and the top edge of the document. A value of 0 means you're at the very top of the page.
scrollLeft / scrollX?
scrollLeft (or window.scrollX) measures horizontal scrolling — how many pixels the document has been scrolled from the left edge. This is less common on responsive websites but can occur on wide tables, code blocks, or fixed-width layouts.
Scroll percentage = scrollTop / (scrollHeight - clientHeight) Ă— 100. The denominator represents the maximum scrollable distance. When this value reaches 100%, you've scrolled to the very bottom of the page. If the page fits entirely within the viewport, the percentage is 0% (or NaN, which we display as 0%).
The most reliable modern approach: window.scrollY for vertical and window.scrollX for horizontal scroll position. Legacy alternatives include window.pageYOffset and document.documentElement.scrollTop. All major browsers support scrollY/scrollX.
scrollHeight and clientHeight?
scrollHeight is the total height of the document including content not visible in the viewport. clientHeight is the visible height of the viewport (the browser window's content area). Their difference gives the maximum scrollable distance.
Store the previous scrollY value and compare it with the current one. If current > previous, the user is scrolling down. If current < previous, they're scrolling up. This monitor tracks direction in real-time using this exact technique.
Smooth scrolling animates the transition between scroll positions. Use window.scrollTo({ top: value, behavior: 'smooth' }) or CSS scroll-behavior: smooth on the html element. The "Jump to" feature in this tool uses smooth scrolling for a polished experience.
Real-time scroll monitoring is essential for debugging scroll-based animations, implementing lazy loading, triggering events at specific scroll depths, measuring user engagement (how far users scroll), and building features like sticky headers, progress indicators, and infinite scroll.
scrollTopMax and maximum scroll values?
The maximum scroll value equals scrollHeight - clientHeight for vertical and scrollWidth - clientWidth for horizontal scrolling. Some browsers support the non-standard scrollTopMax property, but calculating it manually is more reliable across all browsers.
Horizontal scrolling is generally discouraged in web design as it creates a poor user experience, especially on mobile devices. It can also negatively impact SEO if content is hidden off-screen. Google's mobile-first indexing penalizes sites that require horizontal scrolling to access content. Always ensure your layout is responsive.
Use window.addEventListener('scroll', callback) but consider performance: scroll events fire rapidly. Debounce or throttle your handler, or use requestAnimationFrame for visual updates. For non-visual work, consider IntersectionObserver as a more performant alternative.
All scroll position values are displayed in CSS pixels (px). On high-DPI/Retina displays, CSS pixels may differ from device pixels. The monitor reflects what JavaScript reports via window.scrollY and window.scrollX, which always use CSS pixels regardless of device pixel ratio.
List cached responses for your domain. View headers, content, and delete individual entries. Understand your PWA's cache.
Log floor time minutes for small pets. See weekly average. Ensure enough exercise. Local storage.
Visualize real‑time linear acceleration (excluding gravity). Watch the 3D vector graph move as you shake the device.
Animated circle guides your breathing: breathe in, hold, breathe out. Customizable ratios (e.g., 4-7-8). Soothing colors, optional bell sound. Purely local.
Set up a chess position using FEN notation or drag pieces. Share the position link or screenshot. No AI, just board.
Offline‑first search of the CanIUse database. Type a CSS property, HTML element, or API and see global support percentages. Fast.
Enter cabinet width and find optimal placement for knobs or pulls. Visual layout with grid. Achieve professional look.
Extract and view EXIF data from photos including camera settings, GPS location, and timestamps. All metadata read locally, your photos stay private.
Scan for nearby Bluetooth Low Energy devices using the browser. Read device names and signal strength. Experimental API.
Calculate new dimensions while preserving aspect ratio, or find the ratio from width and height. For video and images.
Call navigator.storage.estimate() and display a visual pie chart of used vs. available browser storage. For PWA debugging.
Add plants and track when you last watered them. Get a simple visual alert when it's time to water. Local storage.
View hidden EXIF data (camera model, GPS, date, settings) from any image. Works locally in browser; metadata is never uploaded. Understand your photo details.
Enter pond dimensions and filtration type to estimate safe number of adult koi. Prevent overcrowding.
Select common materials (wood, plastic, metals) and see density chart. Predict floating. Fun science.
Build a categorized list of possessions with value, serial number, and photo (local). Export for insurance purposes. Private.
Plan scenes with a simple shot list and track frames taken. Calculate total play time. Local tool.
Plan your time‑lapse by entering desired clip length, fps, and event duration to find the shooting interval and total frames needed. Avoid under‑ or over‑shooting.
Paste a CSV and write a simple expression to filter rows (e.g., age > 30). See the filtered table and export. Client‑side.
Set up high‑intensity intervals with work, rest, and rounds. Audio cues. Sweat without any app. Local only.
Find your exact age in years, months, and days. Calculate the time until your next birthday. All date computations are performed locally and accurately.
Drop a PDF and see its embedded metadata: author, title, creation date, and more. No content is uploaded; pure browser PDF parsing.
Set a financial goal and track progress with an animated thermometer. Enter current savings, target amount, and see percentage complete. Motivational & local.
Countdown timer with alerts for boiling pacifiers, bottles, or pump parts. Follow recommended times. Local audio alarm.
Convert between currencies using manually updated or default rates. Great for estimation when offline. Local settings.
Select your latitude and day of year to see sun path and identify spots with the most direct sunlight for solar garden lights. Simple visual tool.
Enter a URL and get a rough estimate of its carbon emissions per page view. Based on data transfer size and energy model. Educational.
Run Conway's Game of Life on a canvas grid. Draw patterns, start/stop the evolution, and adjust speed. A mesmerizing zero‑player simulation.
Enter a city name to fetch its current Air Quality Index from public APIs. Color-coded health warning. No login.
Enter hop additions with time and alpha acid to estimate International Bitterness Units. Adjust recipe.