Closed
Description
There are lots of APIs defined on the Navigator object. For now, the common minimum API merely defines navigator.userAgent
as part of the common APIs that WinterCG runtimes are interested in implementing.
However, it is being proposed to add more properties to Navigator
in Node.js for usefulness (e.g. Navigator.hardwareConcurrency
) and legacy compatibility (e.g. constant Navigator.appVersion
version)
Current implementation status:
API/Attribute Name | Node.js | Deno | Cloudflare Worker | Bun |
---|---|---|---|---|
Navigator.userAgent |
✅ | ✅ | ✅ | ✅ |
Navigator.hardwareConcurrency |
✅ | ✅ | ❌ | ✅ |
Navigator.platform |
✅ nodejs/node#50385 | ❌ | ❌ | ✅ |
Navigator.language |
nodejs/node#50303 | ✅ | ❌ | ❌ |
Navigator.languages |
nodejs/node#50303 | ✅ | ❌ | ❌ |
Navigator.onLine |
nodejs/node#50224 | ❌ | ❌ | ❌ |
NavigatorID mixin (excluding Navigator.userAgent and Navigator.platform ) |
nodejs/node#50521 | ❌ | ❌ | ❌ |
I believe the common APIs of Navigator
should be extended to include attributes that were shipped in more than two runtimes. Also, if there are strong push-backs on adding the above APIs to the common minimum API, we should be wary of shipping them to reduce the gaps between the runtimes.
Metadata
Metadata
Assignees
Labels
No labels