demo · v131

Custom Summary Marker

Chrome 131 lifts previous restrictions on ::marker for <summary>, making it a proper list item whose disclosure triangle can be freely replaced with any content string — a character, symbol, or emoji.

try it

Pick a marker style and watch it apply live to all five FAQ items below.

What platforms does the ChromePlatform SDK support?
The ChromePlatform SDK targets all Chromium-based browsers on desktop (Windows, macOS, Linux) and mobile (Android, ChromeOS). It exposes a unified JS surface over platform APIs including File System Access, Web Bluetooth, Web USB, and the Origin Private File System. iOS support is read-only through the WebKit subset.
How do I authenticate my app with the SDK?
Authentication flows through OAuth 2.0 PKCE. Call ChromePlatform.auth.signIn({ scopes: ['storage', 'bluetooth'] }) to trigger the browser-native consent dialog. Tokens are stored in the Origin Private File System and refreshed automatically. You never touch raw credentials in JS.
Is there a bundle size cost?
The core SDK tree-shakes to roughly 8 kB gzipped when you import only the modules you use. The full build — including all device adapters and the polyfill bridge — is 42 kB gzipped. We recommend the modular entrypoints: import { fs } from 'chrome-platform-sdk/fs' and so on.
Can I use the SDK in a Service Worker or Shared Worker?
Most SDK modules work in both contexts. Exceptions: bluetooth and usb require a browsing context with a user gesture, so they throw in workers. The fs, cache, and messaging modules are fully worker-safe. Check the per-module context field in the API reference for the definitive list.
How do I file a bug or request a new platform API?
Use the GitHub issue tracker at github.com/chromium/chrome-platform-sdk/issues. For new API requests, include a link to an existing spec or Explainer — we only surface APIs that have at least a public intent-to-ship on blink-dev. Security disclosures go to security@chromium.org and are embargoed by default.

the code

/* default — native disclosure triangle */

see also