display-glasses-with-jetpack-compose-glimmer

Build Android XR display glasses apps using the Jetpack Compose Glimmer UI toolkit.

1|Updated Jun 9, 2026
One-click install
npx skills add https://github.com/kariemSeiam/android-claw --skill display-glasses-with-jetpack-compose-glimmer-kariemseiam
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: display-glasses-with-jetpack-compose-glimmer
Source: https://github.com/kariemSeiam/android-claw/tree/main/skills/installed/xr-display-glasses-with-jetpack-compose-glimmer
Command: npx skills add https://github.com/kariemSeiam/android-claw --skill display-glasses-with-jetpack-compose-glimmer-kariemseiam

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Developing UI for Android XR display glasses requires a specialized approach: additive displays render black as transparent, standard Material components become invisible, and input is limited to one-dimensional touchpad gestures. This Skill provides the official Google guidelines, component APIs, and design tokens needed to build legible, glanceable projected apps for intelligent eyewear. ## Core Features & Use Cases - Glimmer Component Implementation: Build Cards, Buttons, Title Chips, Icons, Lists, Stacks, Text, and Surfaces with correct focus behavior, depth effects, and theming via GlimmerTheme. - Projected Activity Setup: Configure a Glasses Activity with xr_projected display category, ProjectedContext launching, hardware capability checks, and permission handling. - Design System Compliance: Apply Google Sans Flex variable font typography, additive-display-safe colors, 70% HCT contrast, and DepthEffectLevels for hierarchy. - Use Case: Add a "Launch on Glasses" button to an existing Android app that projects a Glimmer-based notification card UI onto connected display glasses, with touchpad swipe navigation between stacked cards. ## Quick Start Use the display glasses Glimmer skill to create a projected Glasses Activity with a Glimmer card list for my Android app.

Frequently Asked Questions about display-glasses-with-jetpack-compose-glimmer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build an Android app for display glasses with Jetpack Compose?▼

Create a projected Glasses Activity with `android:requiredDisplayCategory="xr_projected"`, add the `androidx.xr.glimmer:glimmer` dependency, and build UI with Glimmer components wrapped in GlimmerTheme. Launch it from your phone app using ProjectedContext.

Why can't I use MaterialTheme or Material components on display glasses?▼

Display glasses use additive displays where black renders as transparent, so Material's dark foreground tokens become invisible. Glimmer components automatically resolve content colors that remain legible against real-world backgrounds.

What is the minimum text size for Android XR glasses apps?▼

The absolute minimum readable text size is 18sp, equivalent to 0.6 degrees of visual angle at 1 meter. Anything smaller fails legibility checks, and thin or hairline font weights should be avoided due to shimmering on additive lenses.

How do I handle input and focus in Jetpack Compose Glimmer?▼

Glimmer uses one-dimensional focus search mapped to the glasses touchpad for tap and swipe gestures. Set `isInitialFocusOnFocusableAvailable` to true in onCreate, avoid nested scrolling controls, and use System Back to dismiss temporary states.

When should I use a Glimmer Stack versus a Glimmer List?▼

Use a Stack when showing one item at a time or when items are of different types; use a List with a Title Chip when items are similar in type. Stacks must be bottom-aligned and 66.dp taller than the tallest item.

What are the limitations of Jetpack Compose Glimmer?▼

Standard Material 3 elevation and shadow modifiers are unsupported; you must use ShadowScope or DepthEffect tokens. Specific hardware device capabilities are not detailed, and pure black must never be used for icon tints since it renders transparent.