{"id":13774149,"url":"https://github.com/meta-quest/immersive-web-emulator","last_synced_at":"2025-04-06T18:15:30.405Z","repository":{"id":84103330,"uuid":"493776727","full_name":"meta-quest/immersive-web-emulator","owner":"meta-quest","description":"Browser extension that emulates Meta Quest devices for WebXR development. Lead: Felix Zhang (fe1ix@meta.com)","archived":false,"fork":false,"pushed_at":"2024-02-27T17:56:18.000Z","size":20760,"stargazers_count":280,"open_issues_count":22,"forks_count":33,"subscribers_count":16,"default_branch":"main","last_synced_at":"2024-04-18T00:11:34.937Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://developer.oculus.com/blog/webxr-development-immersive-web-emulator/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meta-quest.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-18T18:13:44.000Z","updated_at":"2024-06-19T02:56:07.463Z","dependencies_parsed_at":"2024-01-13T12:22:09.041Z","dependency_job_id":"8dc0690b-32a5-4a2f-b282-b23e9c2bbb29","html_url":"https://github.com/meta-quest/immersive-web-emulator","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meta-quest%2Fimmersive-web-emulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meta-quest%2Fimmersive-web-emulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meta-quest%2Fimmersive-web-emulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meta-quest%2Fimmersive-web-emulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meta-quest","download_url":"https://codeload.github.com/meta-quest/immersive-web-emulator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526764,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T17:01:24.169Z","updated_at":"2025-04-06T18:15:30.387Z","avatar_url":"https://github.com/meta-quest.png","language":"JavaScript","funding_links":[],"categories":["Debug"],"sub_categories":["Avatar"],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg height=\"60px\" width=\"60px\" src=\"https://meta-quest.github.io/immersive-web-emulation-runtime/iwer-text.svg\" /\u003e\n    \u003ch1 align=\"center\"\u003eImmersive Web Emulator 2.0\u003c/h1\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://chromewebstore.google.com/detail/immersive-web-emulator/cgffilbpcibhmcfbgggfhfolhkfbhmik\"\u003e\u003cimg src=\"https://badgen.net/chrome-web-store/v/cgffilbpcibhmcfbgggfhfolhkfbhmik\" alt=\"store version\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://chromewebstore.google.com/detail/immersive-web-emulator/cgffilbpcibhmcfbgggfhfolhkfbhmik\"\u003e\u003cimg src=\"https://badgen.net/chrome-web-store/rating/cgffilbpcibhmcfbgggfhfolhkfbhmik\" alt=\"store rating\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://chromewebstore.google.com/detail/immersive-web-emulator/cgffilbpcibhmcfbgggfhfolhkfbhmik\"\u003e\u003cimg src=\"https://badgen.net/chrome-web-store/users/cgffilbpcibhmcfbgggfhfolhkfbhmik\" alt=\"chrome users\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://raw.githubusercontent.com/meta-quest/immersive-web-emulation-runtime/main/LICENSE\"\u003e\u003cimg src=\"https://badgen.net/github/license/meta-quest/immersive-web-emulation-runtime/\" alt=\"license\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nThe Immersive Web Emulator (IWE) is a browser extension that injects a WebXR runtime into web pages, enabling full WebXR emulation on desktop, Chromium-based browsers.\n\nPowered by the [Immersive Web Emulation Runtime](https://meta-quest.github.io/immersive-web-emulation-runtime/), IWE offers a comprehensive WebXR runtime that polyfills or overrides existing WebXR APIs. It includes the Synthetic Environment Module ([@iwer/sem](https://www.npmjs.com/package/@iwer/sem)) for mixed reality emulation capabilities and the DevUI ([@iwer/devui](https://www.npmjs.com/package/@iwer/devui)) for an intuitive developer interface overlay.\n\n![Immersive Web Emulator](./screenshots/iwe.gif)\n\n## Supported Features\n\nIWE supports most mainstream WebXR features and APIs, offering compatibility on par with the WebXR support in the [Meta Quest Browser](https://www.meta.com/experiences/browser/1916519981771802/).\n\n| Specifications                                                                                               | Support Status                                                                          |\n| ------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------- |\n| [**WebXR Device API**](https://immersive-web.github.io/webxr/)                                               | ✅                                                                                      |\n| [**WebXR Gamepads Module**](https://immersive-web.github.io/webxr-gamepads-module/)                          | ✅                                                                                      |\n| [**WebXR Hand Input Module**](https://immersive-web.github.io/webxr-hand-input/)                             | ✅                                                                                      |\n| [**WebXR Augmented Reality Module**](https://immersive-web.github.io/webxr-ar-module/)                       | ✅                                                                                      |\n| [**WebXR Hit Test Module**](https://immersive-web.github.io/hit-test)                                        | ✅                                                                                      |\n| [**WebXR Plane Detection Module**](https://immersive-web.github.io/real-world-geometry/plane-detection.html) | ✅                                                                                      |\n| [**WebXR Mesh Detection Module**](https://immersive-web.github.io/real-world-meshing/)                       | ✅                                                                                      |\n| [**WebXR Anchors Module**](https://immersive-web.github.io/anchors/)                                         | ✅                                                                                      |\n| [**WebXR Layers API**](https://immersive-web.github.io/layers/)                                              | \\* Works with [layers polyfill](https://github.com/immersive-web/webxr-layers-polyfill) |\n| [**WebXR Lighting Estimation API**](https://immersive-web.github.io/lighting-estimation/)                    | ⛔                                                                                      |\n| [**WebXR DOM Overlays Module**](https://immersive-web.github.io/dom-overlays)                                | ⛔                                                                                      |\n\n## Installation\n\nThis extension is built on the [WebExtensions API](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions) and implements [Manifest V3](https://developer.chrome.com/docs/extensions/mv3/intro/). It is compatible with Chrome, Microsoft Edge, and other browsers supporting the API. You can install the Immersive Web Emulator from the following browser extension stores:\n\n- [Google Chrome Web Store](https://chrome.google.com/webstore/detail/immersive-web-emulator/cgffilbpcibhmcfbgggfhfolhkfbhmik)\n- [Microsoft Edge Add-ons Store](https://microsoftedge.microsoft.com/addons/detail/immersive-web-emulator/hhlkbhldhffpeibcfggfndbkfohndamj)\n\n### Manual Installation\n\nFor other Chromium-based browsers, you can manually install the extension by following these steps:\n\n1. Download the latest release [here](https://github.com/meta-quest/immersive-web-emulator/releases), unpack it, and note the unpacked directory.\n2. Open the Extensions page in your browser, typically found in the browser menu, or navigate to `chrome://extensions` in the URL bar if using a Chromium-based browser.\n3. Enable **Developer mode** on the Extensions page.\n4. Click on the **Load unpacked** button and select the unpacked directory from step 1.\n\nNote: The process may vary for different browsers.\n\n### Non-Chromium Browsers\n\nAt this time, IWE is not supported on non-Chromium-based browsers. However, you can integrate IWER directly into your app by following [this guide](https://meta-quest.github.io/immersive-web-emulation-runtime/getting-started.html#adding-iwer-to-your-project) to achieve the **same experience on any modern browser** of your choosing.\n\nAlternatively, use one of the frameworks with IWER already built-in:\n\n- [React-Three/XR](https://pmndrs.github.io/xr/docs/getting-started/development-setup)\n\n## License\n\nIWER is licensed under the MIT License. For more details, see the [LICENSE](https://github.com/meta-quest/immersive-web-emulator/blob/main/LICENSE) file in this repository.\n\n## Contributing\n\nYour contributions are welcome! Please feel free to submit issues and pull requests. Before contributing, make sure to review our [Contributing Guidelines](https://github.com/meta-quest/immersive-web-emulator/blob/main/CONTRIBUTING.md) and [Code of Conduct](https://github.com/meta-quest/immersive-web-emulator/blob/main/CODE_OF_CONDUCT.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeta-quest%2Fimmersive-web-emulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeta-quest%2Fimmersive-web-emulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeta-quest%2Fimmersive-web-emulator/lists"}