Simple Haversine Distance Calculator – Online City‑to‑City
Enter two city names or coordinates and get the straight‑line distance in miles/km. Local calculation.
UD5 Toolkit
Simulate browser geolocation responses — test getCurrentPosition & watchPosition with custom coordinates, errors, and real-time tracking.
Leave blank to set as null (unavailable).
Simulates device movement. Random drift mimics real GPS jitter (~1-5m per tick).
The dashed ring represents accuracy radius (not to scale).
No watchPosition events yet. Start tracking to see log entries.
getCurrentPosition() for a one-time location fetch, and watchPosition() for continuous tracking. The API returns a GeolocationPosition object containing coordinates, accuracy, altitude, heading, speed, and a timestamp.
getCurrentPosition() fires once and returns the current location. watchPosition() registers a callback that fires every time the device position changes, returning a unique watch ID. Use clearWatch(id) to stop tracking. watchPosition is ideal for turn-by-turn navigation, fitness trackers, or any real-time location-based app.
PositionOptions.timeout property.
accuracy value (in meters) represents the radius of a confidence interval around the reported position. For example, an accuracy of 15m means the true position is likely within a 15-meter circle around the reported coordinates. Lower numbers indicate higher precision. GPS typically offers 5-30m accuracy, while Wi-Fi triangulation may be 20-200m, and cell tower triangulation can be 100m-5km.
localhost is considered a secure context and the API will work without HTTPS.
More Tools → Sensors), select a preset location or enter custom coordinates, and the browser will override its real geolocation. BrowserStack and physical device testing are recommended for production validation.
Enter two city names or coordinates and get the straight‑line distance in miles/km. Local calculation.
Generate a pop signal to determine if speakers are wired in phase. Quick stereo test.
Display an astigmatism dial and instructions for self-assessment. Educational, not a medical diagnosis.
Hear a word spoken by browser TTS and type the spelling. Choose difficulty or paste your own list. Great for kids. Local only.
Override your browser's geolocation to any coordinates and test how your app responds. For development and privacy testing.
Hear text spoken word by word with boundary events. See the exact index and character. Advanced TTS dev tool.
Load a video and visually check if audio aligns with lips. Use frame‑by‑frame stepping. Debug playback issues.
Toggle a screen wake lock to prevent the device from dimming or sleeping. See the lock state and learn the API.
Check if your page triggers the beforeinstallprompt event. Simulate the install flow. Debug PWA installability.
Measure your visual and auditory reaction speed. Average and best times shown. No data collected. Pure Javascript timing.
Paste your Accept‑Language header and see which languages your site should serve based on quality values. Internationalization helper.
Test how your page loads under slow, 3G, or offline conditions by intercepting fetch and applying delays. No DevTools needed.
Check current screen orientation and test the lock API. Useful for mobile web apps. Demo with code.
Test the Fullscreen API: request fullscreen on a colored div, detect changes, and copy the JavaScript boilerplate.
Test the Web Share API by sharing text, links, and files directly from the browser. Check compatibility and see example code.
Check if your browser and display support the wider DCI‑P3 color space. See the difference with a simple test pattern.
Enter any phrase and instantly see if it's a palindrome, ignoring spaces and punctuation. Fun for word nerds.
Transform an image from rectangular to polar coordinates (and back). Create amazing circular swirl effects. Local canvas.
Generate random, formatted ID numbers that match pattern rules for various countries. For testing input validation. No real data.
Pick a method, URL, headers, and body, then send an HTTP request directly from your browser. Debug APIs easily.
Quickly test if your webcam, microphone, and speakers work correctly. See live video and audio meter. No data sent.
Generate random but realistic‑looking data arrays (users, products, orders) with typos and missing fields. For test robustness.
Simple interactive eye dominance test: hold up a virtual dot and see which eye stays aligned. Educational.
Build an iframe with different sandbox flags and see live which features are blocked. For secure embedding.
Simulate random mouse moves, clicks, or keystrokes to test idle‑timeout logic. Stops when you move the mouse. Dev test.
Paste a test card number to verify Luhn algorithm, identify issuer (Visa, MC), and check length. No real data.
Play left‑only, right‑only, and frequency sweeps to test your speakers or headphones. Quick audio check.
See a live VU meter of your microphone's input level. Test if your mic is working and adjust gain. Privacy‑friendly.
Generate valid, random unicast MAC addresses for testing or spoofing. Select OUI prefix if desired. Local only.
Calculate the area of an irregular polygon by entering its vertex coordinates. Uses the shoelace formula. Pure math.