A free local magnifier for low-vision Meta Quest users. Freeze game text, zoom up to 8x, and return to playing.
Kotlin
3
13 commits
updated Sep 28, 2026
QuestLens is a free, open-source accessibility project for people with low vision using Meta Quest.
It currently supports Quest 2, Quest 3 and Quest 3S, and there is also a 2D version of the app.
The goal is simple: make small text, menus and visual details easier to read in XR without relying on OCR, cloud processing or an account.
The new preview brings live magnification for real-world passthrough into the same QuestLens APK as the frozen-image magnifier. It also refreshes the visuals, makes setup easier, and adds English, Portuguese, Spanish, French and German language options. Some text may still appear in English. Zoom controls within the QuestLens UI are still in development.
Download QuestLens 0.5.5-preview · Project update · Setup instructions · Report an issue
The 0.5.5-preview is a sideloaded debug build. Capture features require Quest system permission.
Contact: davidperetta12@gmail.com
I also make free, by-request modified APKs with real-time zoom for compatible XR apps. If you have low vision and would like to discuss a build, contact me.
I have low vision myself, and reading small text and UI elements in VR can be difficult. QuestLens grew out of that problem.
Quest has accessibility settings, but I could not find a built-in magnifier that solved the in-game reading workflow I needed on my headset. QuestLens is an independent project built around that gap while better platform-level accessibility continues to develop.
The frozen-image workflow in the 0.4.3 preview is:
Zoom steps are 1×, 2×, 4×, 6× and 8×. Shortcut configuration is kept in SETTINGS on the start screen, out of the image viewer.
Read the installation guide. Sideloading requires developer mode.
The optional double-tap shortcut needs a one-time ADB permission/key setup; subsequent sessions attempt preparation locally on the headset with Wi-Fi enabled. It replaces the native passthrough shortcut and also affected the physical action button on the tested Quest 3S. Settings includes an option to restore it.
The optional volume-button shortcut is another way to open the lens.
QuestLens is local by design.
Images stay in headset memory. There are no image uploads, saved screenshots, audio, OCR, analytics or user accounts. Local ADB was used to prepare or restore the optional headset gesture in the 0.4.3 preview.
Requires JDK 17 and Android SDK 36:
./gradlew assembleDebug testDebugUnitTest lintDebug
On Windows use gradlew.bat. The APK is generated at
app/build/outputs/apk/debug/app-debug.apk. The source includes the Gradle wrapper.
The 0.4.3 preview recorded 15 tests passed and zero lint errors. See the physical test record for the test status of that build.
Contributions and low-vision usability feedback are welcome. Read the architecture notes and contribution guide.
If this project helps you, you can optionally support c0rtex on Patreon.
All QuestLens features are free. Support helps with testing, compatibility and continued accessibility work, but does not guarantee a release schedule.
QuestLens project code is licensed under MIT. Dependencies retain their own licenses, including LibADB, Conscrypt, Bouncy Castle and LGPL-licensed SPAKE2.
See third-party notices.
Kotlin
91.7%
PowerShell
8.3%
A free local magnifier for low-vision Meta Quest users. Freeze game text, zoom up to 8x, and return to playing.
Kotlin
3
13 commits
updated Sep 28, 2026
QuestLens is a free, open-source accessibility project for people with low vision using Meta Quest.
It currently supports Quest 2, Quest 3 and Quest 3S, and there is also a 2D version of the app.
The goal is simple: make small text, menus and visual details easier to read in XR without relying on OCR, cloud processing or an account.
The new preview brings live magnification for real-world passthrough into the same QuestLens APK as the frozen-image magnifier. It also refreshes the visuals, makes setup easier, and adds English, Portuguese, Spanish, French and German language options. Some text may still appear in English. Zoom controls within the QuestLens UI are still in development.
Download QuestLens 0.5.5-preview · Project update · Setup instructions · Report an issue
The 0.5.5-preview is a sideloaded debug build. Capture features require Quest system permission.
Contact: davidperetta12@gmail.com
I also make free, by-request modified APKs with real-time zoom for compatible XR apps. If you have low vision and would like to discuss a build, contact me.
I have low vision myself, and reading small text and UI elements in VR can be difficult. QuestLens grew out of that problem.
Quest has accessibility settings, but I could not find a built-in magnifier that solved the in-game reading workflow I needed on my headset. QuestLens is an independent project built around that gap while better platform-level accessibility continues to develop.
The frozen-image workflow in the 0.4.3 preview is:
Zoom steps are 1×, 2×, 4×, 6× and 8×. Shortcut configuration is kept in SETTINGS on the start screen, out of the image viewer.
Read the installation guide. Sideloading requires developer mode.
The optional double-tap shortcut needs a one-time ADB permission/key setup; subsequent sessions attempt preparation locally on the headset with Wi-Fi enabled. It replaces the native passthrough shortcut and also affected the physical action button on the tested Quest 3S. Settings includes an option to restore it.
The optional volume-button shortcut is another way to open the lens.
QuestLens is local by design.
Images stay in headset memory. There are no image uploads, saved screenshots, audio, OCR, analytics or user accounts. Local ADB was used to prepare or restore the optional headset gesture in the 0.4.3 preview.
Requires JDK 17 and Android SDK 36:
./gradlew assembleDebug testDebugUnitTest lintDebug
On Windows use gradlew.bat. The APK is generated at
app/build/outputs/apk/debug/app-debug.apk. The source includes the Gradle wrapper.
The 0.4.3 preview recorded 15 tests passed and zero lint errors. See the physical test record for the test status of that build.
Contributions and low-vision usability feedback are welcome. Read the architecture notes and contribution guide.
If this project helps you, you can optionally support c0rtex on Patreon.
All QuestLens features are free. Support helps with testing, compatibility and continued accessibility work, but does not guarantee a release schedule.
QuestLens project code is licensed under MIT. Dependencies retain their own licenses, including LibADB, Conscrypt, Bouncy Castle and LGPL-licensed SPAKE2.
See third-party notices.
Kotlin
91.7%
PowerShell
8.3%