demo · v130

Scheme Explorer

Chrome 130 aligns the URL constructor with the WHATWG spec for non-special schemes — git://, ipfs://, web+foo://, geo:, magnet: and any web+* scheme. Previously these produced an opaque path with no host/pathname decomposition. Pick a scheme below or paste your own URL to see every component property the Chrome 130 parser populates.

Checking URL constructor behaviour…
// Chrome 130: non-special schemes get host + pathname
const url = new URL('git://github.com/user/repo.git?ref=main');

// Pre-Chrome 130 (opaque path):
// url.host     → ''
// url.hostname → ''
// url.pathname → '//github.com/user/repo.git'  (opaque!)
// url.search   → '?ref=main'

// Chrome 130 (spec-aligned):
// url.host     → 'github.com'
// url.hostname → 'github.com'
// url.pathname → '/user/repo.git'
// url.search   → '?ref=main'

// All non-special schemes benefit:
new URL('ipfs://Qm.../path').host      // → 'qm...'
new URL('web+foo://app/route').host    // → 'app'
new URL('geo:37.4,-122.0').pathname   // → '37.4,-122.0'

see also