All topics
🖥️

Web Platform

The browser as an application platform: document model, styling, scripting, storage, workers, crypto, streams, components, and device APIs.

Data FormatsBrowser PlatformInput & InteractionDevice Access & SensorsGraphics & XR
24
Must Know
36
Should Know
22
Niche

Must Know

24 specs
RFC 8259RFCMust Know

JSON

JSON is the lingua franca of web APIs. RFC 8259 is short and worth reading once — it clarifies edge cases around numbers, encoding, and trailing commas.

ProductData Formats
Details
RFC 7578RFCMust Know

multipart/form-data

Every file upload in your app uses this. Know the MIME boundary, Content-Disposition, and Content-Type mechanics to build and debug file upload APIs.

ProductData Formats
Details
IANA Media TypesIANAMust Know

Media Types

Correct Content-Type headers drive content negotiation, browser rendering, and API behavior. Wrong types cause security and parsing bugs.

ProductData Formats
Details
IANAMust Know

File Formats

Every upload, download, attachment, and asset pipeline crosses these layers. Misunderstanding header vs envelope causes MIME spoofing bugs, parser differentials, and broken file validation. Start here before diving into individual format specs.

ProductData Formats
Details
IANAMust Know

Magic Bytes

Extension spoofing (`virus.exe` → `photo.jpg`) and MIME spoofing are common attack vectors. Magic-byte detection is the first line of defense in upload validation, antivirus, and content sniffing.

ProductData Formats
Details
RFC 4648RFCMust Know

Base64

JSON cannot carry raw binary; Base64 is how file bytes appear in API responses, data URLs, PEM blocks, and JWT segments. Know the difference between standard Base64 and Base64url.

ProductData Formats
Details
W3C PNG / ISO/IEC 15948W3CMust Know

PNG

PNG is the default lossless image format on the web — screenshots, UI assets, icons with transparency, and OCR-friendly graphics. Chunk structure matters for metadata stripping and security review.

ProductData Formats
Details
ISO/IEC 10918 / ITU-T T.81ISO/IECMust Know

JPEG

JPEG dominates photo storage and delivery. EXIF metadata (GPS, camera, orientation) lives in APP1 markers — relevant for privacy, image processing, and upload pipelines.

ProductData Formats
Details
W3C SVG 2W3CMust Know

SVG

SVG powers icons, logos, charts, and interactive graphics. Because it's XML (not opaque binary), XSS and SSRF via embedded references are real risks in upload pipelines.

ProductData Formats
Details
ISO 32000ISO/IECMust Know

PDF

PDF is the standard for invoices, reports, contracts, and printable documents. Object/stream structure, encryption, and embedded content matter for parsing, redaction, and security review.

ProductBack OfficeData Formats
Details
APPNOTE / ISO/IEC 21320ISO/IECMust Know

ZIP

ZIP is everywhere — downloads, backups, Java JARs, Office Open XML. Central-directory-at-end structure, path traversal (`../../`), and zip bombs are critical security concerns.

ProductData Formats
Details
WHATWG HTML LSWHATWGMust Know

HTML

The spec behind every HTML page, form, and browser API. The canonical reference for how browsers actually parse and process HTML.

ProductBrowser Platform
Details
WHATWG DOM LSWHATWGMust Know

DOM

Every frontend framework (React, Vue, Svelte) ultimately produces DOM operations. Understanding the event model and tree structure prevents subtle bugs.

ProductBrowser Platform
Details
WHATWG Fetch LSWHATWGMust Know

Fetch

Every fetch() call and XHR request is governed by this spec. It also defines CORS behavior in detail.

ProductBrowser Platform
Details
W3C CSS SnapshotW3CMust Know

CSS

CSS drives all visual layout. Key modules: Grid, Flexbox, Custom Properties, Cascade layers, Container Queries. The snapshot identifies what's stable vs experimental.

ProductBrowser Platform
Details
ECMA-262EcmaMust Know

ECMAScript

JavaScript is the execution model of the web. The spec is the canonical reference for language semantics — closures, coercion, prototype lookup, module resolution, and async scheduling.

ProductBrowser Platform
Details
HTML LS §Custom Elements / Shadow DOMWHATWGMust Know

Web Components

Every component framework (React, Vue, Lit, Angular) either compiles to or interacts with these primitives. Shadow DOM is how browsers isolate component internals. Understanding the native model prevents framework lock-in.

ProductBrowser Platform
Details
HTML LS §Web StorageWHATWGMust Know

Web Storage

The simplest client-side persistence. Used everywhere for auth tokens, user preferences, feature flags, and cross-tab state. Know the 5 MB limit, synchronous blocking, and origin scoping rules.

ProductBrowser Platform
Details
W3C UI EventsW3CMust Know

UI Events

The foundational event model that every web application uses. Understanding event propagation (capture, target, bubble), event.preventDefault(), and the difference between key and code prevents input handling bugs.

ProductInput & Interaction
Details
W3C Pointer Events L3W3CMust Know

Pointer Events

The modern way to handle all pointing devices with one code path. Replaces separate mouse + touch event handling. Required for drawing apps, drag interactions, and multi-touch. Pressure and tilt enable pen/stylus features.

ProductInput & Interaction
Details
W3C PermissionsW3CMust Know

Permissions

The gating mechanism for every sensitive browser API. Check permission state before requesting access to avoid unexpected prompt dialogs. The change event lets you react when users revoke permissions in browser settings.

ProductDevice Access & Sensors
Details
W3C GeolocationW3CMust Know

Geolocation

Required for maps, location-based search, delivery tracking, geofencing, and any feature that needs the user's physical location. Understanding accuracy levels (GPS vs Wi-Fi vs IP) and the permission flow is essential.

ProductDevice Access & Sensors
Details
W3C Media CaptureW3CMust Know

getUserMedia

Required for video calls, audio recording, photo capture, barcode scanning, and AR experiences. Understanding constraints, track lifecycle (enabled, muted, ended), and device enumeration prevents broken camera/mic UX.

ProductDevice Access & Sensors
Details
Khronos WebGL 2.0KhronosMust Know

WebGL

The established GPU rendering API in browsers. Powers Three.js, Babylon.js, PixiJS, MapboxGL, Google Earth, and countless games and visualizations. WebGL 2.0 has near-universal support and is the baseline for serious graphics work.

ProductGraphics & XR
Details

Should Know

36 specs
RFC 7468RFCShould Know

PEM

PEM is how keys and certificates appear in `.pem` files, environment variables, and Kubernetes secrets. The BEGIN/END lines are the envelope; the Base64 block is the payload.

ProductBack OfficeData Formats
Details
GIF89aW3CShould Know

GIF

GIF remains common for short animated loops and legacy assets. GIF89a extension blocks enable animation timing and transparent pixels.

ProductData Formats
Details
Google WebPgRPCShould Know

WebP

WebP delivers smaller files than JPEG/PNG for equivalent quality — widely used for web delivery via `<picture>`, CDN transforms, and Next.js image optimization.

ProductData Formats
Details
AOMedia AVIFAOMediaShould Know

AVIF

AVIF is the next-generation web image format — `<picture>` fallbacks, CDN support, and browser adoption make it worth knowing for asset pipelines and performance work.

ProductData Formats
Details
RFC 1952RFCShould Know

gzip

`.gz` files, HTTP Content-Encoding: gzip, and tarball distribution (`.tar.gz`) all depend on this format. Know header vs raw DEFLATE stream.

ProductData Formats
Details
POSIX ustarOpen GroupShould Know

TAR

Docker layers, npm pack, Linux package sources, and backup workflows use tar. ustar and PAX extensions define long filenames and metadata.

ProductSystemsData Formats
Details
ISO/IEC 23008-12ISO/IECShould Know

HEIF/HEIC

iPhone photos default to HEIC — upload pipelines, image conversion services, and CDN transcoding need to handle this container. AVIF shares the same HEIF structure with AV1 instead of HEVC.

ProductData Formats
Details
RFC 8949RFCShould Know

CBOR

CBOR is the binary envelope behind COSE cryptographic messages and many constrained-device protocols. Typed length-prefixed encoding without a schema — unlike Protobuf.

ProductBlockchainData Formats
Details
W3C XML 1.0W3CShould Know

XML

XML remains embedded in enterprise integrations, document formats, and legacy APIs. Namespaces, entity expansion (XXE), and DTD processing are security-critical in parsers.

ProductBack OfficeData Formats
Details
YAML 1.2.2YAML.orgShould Know

YAML

YAML configs power most DevOps tooling. Anchor/alias and implicit typing cause subtle bugs — know why `countries: [NO, US]` parses as `[false, null]` in YAML 1.1.

ProductBack OfficeData Formats
Details
ECMA-376 / ISO/IEC 29500EcmaShould Know

OOXML

OOXML is the dominant enterprise document format. Every `.docx` is a ZIP you can unzip — knowing the part layout enables templating, mail-merge, and malware scanning.

ProductBack OfficeData Formats
Details
Apache ParquetApacheShould Know

Parquet

Parquet is the standard lakehouse/warehouse on-disk format (Spark, DuckDB, BigQuery export, Snowflake). Column chunk layout explains why analytics workloads beat row-oriented JSON/CSV.

ProductBack OfficeData Formats
Details
W3C Service WorkersW3CShould Know

Service Workers

Service Workers power offline support, background sync, and push notifications. Required for serious PWA/installable app behavior.

ProductBrowser Platform
Details
W3C App ManifestW3CShould Know

App Manifest

Required for Add to Home Screen / Install App functionality on iOS and Android. Defines how your web app presents when installed as a native-like app.

ProductBrowser Platform
Details
W3C Web AnimationsW3CShould Know

Web Animations

The bridge between CSS animations and JavaScript control. Required for complex choreography, scroll-driven animations, and animation libraries (GSAP, Motion One) that target this API.

ProductBrowser Platform
Details
W3C IndexedDB 3.0W3CShould Know

IndexedDB

The only serious client-side database in browsers. Required for offline-first apps, large dataset caching, and any storage that outgrows localStorage's 5 MB or needs indexed queries.

ProductBrowser Platform
Details
HTML LS §WorkersWHATWGShould Know

Web Workers

Any CPU-intensive work (parsing, compression, crypto, WASM) must run off the main thread to keep UI responsive. Workers are the browser's concurrency primitive — understand their message passing model and limitations (no DOM access).

ProductBrowser Platform
Details
W3C Web CryptoW3CShould Know

Web Crypto

The correct way to do crypto in the browser — no npm packages needed. Required for client-side encryption, token signing, secure key storage, and WebAuthn integration. Also available in Node.js and Deno.

ProductBrowser Platform
Details
WHATWG StreamsWHATWGShould Know

Streams

Streams are how modern browsers handle large data: fetch response bodies, file reads, compression, and encoding are all stream-based. Understanding backpressure and piping is essential for efficient data processing.

ProductBrowser Platform
Details
W3C Intersection ObserverW3CShould Know

Intersection Observer

The standard way to implement lazy loading, infinite scroll, ad viewability tracking, and scroll-triggered animations. Far more performant than scroll event listeners — runs off the main thread.

ProductBrowser Platform
Details
W3C Performance TimelineW3CShould Know

Performance APIs

The data source behind Core Web Vitals (LCP, FID/INP, CLS), RUM (Real User Monitoring), and performance debugging. PerformanceObserver is the modern API; the older performance.timing is deprecated.

ProductBrowser Platform
Details
HTML LS §HistoryWHATWGShould Know

History API

Every SPA router (React Router, Next.js, Vue Router) is built on pushState/popstate. The Navigation API is the modern replacement with better intercept semantics. Understanding the history stack prevents navigation bugs.

ProductBrowser Platform
Details
W3C Push APIW3CShould Know

Push API

Required for web push notifications — the re-engagement channel for PWAs. Works with Service Workers and the Notifications API. Understanding VAPID and the subscription lifecycle prevents broken push implementations.

ProductBrowser Platform
Details
W3C Touch EventsW3CShould Know

Touch Events

Still the primary touch API on iOS Safari (Pointer Events support is newer and incomplete). Required for pinch-to-zoom, swipe gestures, and touch-specific UX. Most apps need both Touch and Pointer Events.

ProductInput & Interaction
Details
W3C Input Events L2W3CShould Know

Input Events

Required for building rich text editors (Notion, Google Docs, ProseMirror, Tiptap). The beforeinput event with inputType lets you intercept and customize every editing operation before it happens.

ProductInput & Interaction
Details
HTML LS §DnDWHATWGShould Know

Drag & Drop

Powers file upload drop zones, sortable lists, kanban boards, and drag-based UI. The DataTransfer API is shared with clipboard events. Understanding dragover prevention (preventDefault) and data transfer types is essential.

ProductInput & Interaction
Details
WHATWG NotificationsWHATWGShould Know

Notifications

The display side of web notifications (Push API handles delivery). Used for chat messages, calendar reminders, and real-time alerts. Understanding the permission model and notification lifecycle prevents spam UX.

ProductDevice Access & Sensors
Details
WHATWG FullscreenWHATWGShould Know

Fullscreen

Required for video players, presentations, games, and immersive experiences. Understanding the security restrictions (user gesture required, no cross-origin iframes by default) prevents fullscreen request failures.

ProductDevice Access & Sensors
Details
W3C Page VisibilityW3CShould Know

Page Visibility

Essential for pausing animations/video, reducing network requests, and saving state when the user navigates away. Analytics and session tracking depend on visibility events to measure actual engagement time.

ProductDevice Access & Sensors
Details
W3C Screen OrientationW3CShould Know

Screen Orientation

Required for mobile games, video players, and apps that need landscape mode. Lock prevents disorienting rotation during gameplay or presentations. Understanding the fullscreen requirement for lock() prevents failures.

ProductDevice Access & Sensors
Details
W3C Screen Wake LockW3CShould Know

Wake Lock

Required for recipe apps, presentation slides, navigation/maps, music players, and any app where the screen must stay on. The automatic release on visibility change means you must re-acquire on visibilitychange.

ProductDevice Access & Sensors
Details
W3C MediaRecorderW3CShould Know

MediaRecorder

Required for voice memos, video recording, screen recording tools, and any app that captures media. Understanding chunk-based recording (timeslice parameter) enables real-time upload during recording.

ProductDevice Access & Sensors
Details
W3C Screen CaptureW3CShould Know

Screen Capture

Required for screen sharing in video calls, screen recording tools, and remote support apps. Understanding the user-driven selection (browser shows picker) and tab audio capture enables proper UX.

ProductDevice Access & Sensors
Details
W3C Generic SensorW3CShould Know

Sensors

Enables motion-based UX (shake to undo, tilt to scroll), compass features, step counting, and AR experiences. The unified permission model means understanding the base Sensor lifecycle covers all sensor types.

ProductDevice Access & Sensors
Details
W3C WebGPUW3CShould Know

WebGPU

The successor to WebGL with dramatically better performance and GPU compute support. Enables ML inference on GPU, real-time ray tracing, physics simulation, and AAA-quality rendering in the browser. Ships in Chrome, Edge, and Firefox.

ProductGraphics & XR
Details
W3C WebXRW3CShould Know

WebXR

The standard for browser-based VR/AR: headset rendering, controller input, room-scale tracking, and AR overlays. Supports Meta Quest, Apple Vision Pro, HoloLens, and phone-based AR. Works with WebGL and WebGPU for rendering.

ProductGraphics & XR
Details

Niche / Specialized

22 specs
W3C WOFF2W3CNiche

WOFF2

WOFF2 is the standard delivery format for `@font-face` on the web — smaller than raw TTF/OTF. Font table structure comes from OpenType; WOFF2 is the transport envelope.

ProductData Formats
Details
Windows DIBW3CNiche

BMP

Legacy Windows bitmap format still encountered in scanners, game assets, and older pipelines. Simple header + raw pixels — useful for understanding uncompressed raster layout.

ProductSystemsData Formats
Details
ISO/IEC 12639 / TIFF 6.0ISO/IECNiche

TIFF

TIFF is the archival/print industry standard — scanned documents, GIS, medical imaging, and DNG raw photos. IFD tag model is a classic variable-header design.

ProductBack OfficeData Formats
Details
ICO/CURW3CNiche

ICO

Favicons (`favicon.ico`) and Windows app icons use this format. Modern favicons often use PNG inside ICO containers or switch to `<link rel="icon">` with PNG/SVG.

ProductData Formats
Details
bzip2 1.0.3Linux FdnNiche

bzip2

Common on Linux for compressed tarballs and package sources. Block header + CRC footer structure; decompression bombs are a security concern like gzip/zip.

ProductSystemsData Formats
Details
7z / LZMAISO/IECNiche

7z

7z often achieves better compression than ZIP/gzip. Understanding stream/header separation helps when debugging extraction tools and archive security policies.

ProductSystemsData Formats
Details
MessagePack specIETFNiche

MessagePack

MessagePack is a practical middle ground when JSON is too large and Protobuf is too rigid. Know tag-byte structure for debugging wire captures.

ProductData Formats
Details
OASIS ODF 1.3OASISNiche

ODF

ODF is the default format for LibreOffice/OpenOffice and some government mandates. ZIP envelope + XML payload pattern mirrors OOXML design.

ProductBack OfficeData Formats
Details
Apache ArrowApacheNiche

Arrow IPC

Arrow is the interchange layer between Python/R/JVM analytics, DuckDB, and Parquet readers. IPC framing is how columnar data crosses process boundaries without JSON overhead.

ProductBack OfficeData Formats
Details
W3C Resize ObserverW3CNiche

Resize Observer

Essential for responsive components that need to adapt to their container size (not just viewport). Powers container-query polyfills, responsive charts, and layout-aware components.

ProductBrowser Platform
Details
W3C Clipboard APIW3CNiche

Clipboard API

Required for any 'Copy to clipboard' button, paste-from-image, or rich text editing. The async API requires user gesture and permissions — understanding the security model prevents frustrating clipboard failures.

ProductBrowser Platform
Details
W3C File APIW3CNiche

File API

Used by every file upload, image preview, drag-and-drop, and client-side file processing feature. Blob URLs are the bridge between binary data and DOM elements (img, video, a[download]).

ProductBrowser Platform
Details
WHATWG EncodingWHATWGNiche

Encoding

Required whenever you work with binary data in JavaScript — ArrayBuffers from fetch, WebSocket binary frames, file contents, or crypto operations all need encoding/decoding. UTF-8 is the web's canonical encoding.

ProductBrowser Platform
Details
W3C GamepadW3CNiche

Gamepad

Required for web-based games and interactive experiences. The polling model (no events for button presses) means you need a requestAnimationFrame loop. Supports Xbox, PlayStation, Switch Pro, and generic HID controllers.

ProductInput & Interaction
Details
W3C Selection APIW3CNiche

Selection API

Required for rich text editors, annotation tools, and any feature that reads or manipulates text selection. The Selection/Range model is how browsers track cursor position in contenteditable regions.

ProductInput & Interaction
Details
W3C Web BluetoothW3CNiche

Web Bluetooth

Enables web apps to communicate with BLE devices: fitness trackers, smart home sensors, medical devices, and custom hardware. The user-driven device picker (no background scanning) provides the security model.

ProductDevice Access & Sensors
Details
WICG WebUSBW3CNiche

WebUSB

Enables web-based firmware updates, microcontroller programming (Arduino, ESP32), and custom USB device control without native drivers. Chrome-only but the only web path to raw USB access.

ProductDevice Access & Sensors
Details
WICG Web SerialW3CNiche

Web Serial

Enables web-based communication with serial devices: Arduino/microcontroller consoles, GPS receivers, lab equipment, POS terminals, and CNC machines. Uses the Streams API for data flow.

ProductDevice Access & Sensors
Details
WICG WebHIDW3CNiche

WebHID

Enables web apps to access HID devices that the Gamepad API doesn't cover: custom controllers, macro pads, LED strips, barcode scanners, and specialized input devices. Complements Gamepad API for non-standard controllers.

ProductDevice Access & Sensors
Details
W3C Web MIDIW3CNiche

Web MIDI

Required for web-based music production tools, DAWs, visualizers, and MIDI controller integration. SysEx access requires explicit user permission due to the ability to reprogram devices.

ProductDevice Access & Sensors
Details
W3C VibrationW3CNiche

Vibration

Enables haptic feedback for notifications, game events, form validation errors, and timer alerts on mobile devices. Simple API but important for mobile-first UX and accessibility.

ProductDevice Access & Sensors
Details
W3C PiPW3CNiche

PiP

Required for video players, video calls, and live streaming UIs that need to stay visible while multitasking. Document PiP extends this to custom player controls, chat overlays, and productivity widgets.

ProductDevice Access & Sensors
Details