reading...
| API | Present? |
|---|---|
| EventSource (SSE) | |
| WebSocket | |
| fetch | |
| localStorage | |
| sessionStorage | |
| Touch events | |
| Pointer events | |
| CSS transitions |
Tests below hit /echo/ws, /echo/sse, /echo/poll on this
same origin.
— not started —
— not started —
— not started —
Press any key, hardware page-turn button, or 5-way joystick:
| key | keyCode | code | type |
|---|
These determine whether crypto.randomUUID() works. x-reader calls it during init
— a failure here causes a blank page.
| Check | Result |
|---|---|
| isSecureContext | |
| window.crypto present | |
| crypto.getRandomValues | |
| crypto.randomUUID present | |
| crypto.randomUUID() call result |
x-reader bundles to an ES2017 IIFE. These JS features must work.
| Feature | Present? |
|---|---|
| Promise | |
| Symbol | |
| Proxy | |
| URL constructor | |
| async / await | |
| Arrow functions | |
| Nullish coalescing (??) | |
| Optional chaining (?.) | |
| class syntax | |
| WeakMap | |
| WeakSet | |
| queueMicrotask (Svelte scheduler) | |
| TextEncoder |
x-reader's IIFE uses <script defer> so it runs after the DOM is parsed. If
defer is broken the app never mounts (blank page, no error).
| Check | Result |
|---|---|
| defer script executed | waiting… |
| DOM ready when defer runs | waiting… |