Skip to content

Add iPadOS 'Add to Home Screen' support#3546

Open
DisabledAbel wants to merge 3 commits into
pingdotgg:mainfrom
DisabledAbel:main
Open

Add iPadOS 'Add to Home Screen' support#3546
DisabledAbel wants to merge 3 commits into
pingdotgg:mainfrom
DisabledAbel:main

Conversation

@DisabledAbel

@DisabledAbel DisabledAbel commented Jun 24, 2026

Copy link
Copy Markdown

Add iPadOS "Add to Home Screen" Support

What Changed

  • Added Web App Manifests (manifest.json) to both the marketing site and web application.

  • Updated the HTML <head> in:

    • apps/marketing/src/layouts/Layout.astro
    • apps/web/index.html

    with the following tags:

<link rel="manifest" href="/manifest.json" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="apple-mobile-web-app-title" content="T3 Code" />
  • Added a high-resolution icon.png (512×512) to the web app's public assets.
  • Referenced the icon in the manifest to provide a consistent installation experience across supported devices.

Why

Users visiting T3 Code on iPadOS currently do not have a seamless way to install the application to their home screen. By adding a Web App Manifest and Apple-specific web app metadata, Safari can now present the "Add to Home Screen" option.

This allows T3 Code to launch as a standalone application without browser navigation controls, creating a more immersive, app-like experience for users managing agent threads.

Checklist

  • This PR is small and focused.
  • I explained what changed and why.
  • I verified that the manifest files are linked correctly.
  • I verified that the Apple web app meta tags are present in the rendered output.
  • I confirmed the installation flow works on iPadOS Safari.

Note

Low Risk
Static manifest and head/meta/CSS tweaks only; no auth, API, or business-logic changes.

Overview
Adds Web App Manifest files for the marketing site and main web app so Safari can offer Add to Home Screen and launch T3 Code in standalone mode with defined name, icons, and theme colors (#09090b marketing, #161616 web).

Both Layout.astro and apps/web/index.html now link /manifest.json and include Apple web-app meta tags (apple-mobile-web-app-capable, status bar style, title). Marketing also sets viewport-fit=cover and padding-top: env(safe-area-inset-top) on the sticky nav so installed layouts respect the notch/safe area on iPad.

Reviewed by Cursor Bugbot for commit 7aed8a2. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add iPadOS and iOS 'Add to Home Screen' PWA support to marketing and web apps

  • Adds manifest.json to both apps/marketing and apps/web with app metadata, standalone display mode, and icons (16×16 to 512×512).
  • Adds iOS PWA meta tags (apple-mobile-web-app-capable, apple-mobile-web-app-status-bar-style=black-translucent, apple-mobile-web-app-title) to Layout.astro and index.html.
  • Updates the viewport meta tag to include viewport-fit=cover and adds padding-top: env(safe-area-inset-top) to the sticky nav to handle notches on iOS devices.

Macroscope summarized 7aed8a2.

- Add Web App Manifest (manifest.json) to both marketing and web apps.
- Include Apple-specific meta tags for standalone web app support.
- Ensure consistent icons across both applications for PWA support.
- Add Web App Manifest (manifest.json) to both marketing and web apps.
- Include Apple-specific meta tags for standalone web app support.
- Add high-resolution app icons to manifests for improved install experience.
@coderabbitai

coderabbitai Bot commented Jun 24, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: b249ec64-e486-4000-9964-4ebb52ac9bec

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Jun 24, 2026
"start_url": "/",
"display": "standalone",
"background_color": "#161616",
"theme_color": "#161616",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Manifest ignores light theme

Medium Severity

The manifest.json sets background_color and theme_color to a fixed dark value (#161616). This conflicts with the app's light theme (#ffffff). On iPadOS home-screen launch, this causes a temporary dark splash and mismatched browser chrome for light-theme users before the app renders its light UI.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 05f07b6. Configure here.

{
"src": "/icon.png",
"sizes": "512x512",
"type": "image/png"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

512 icon skips channel branding

Medium Severity

The PWA manifest's 512x512 icon, /icon.png, isn't updated by the branding override scripts. This means the largest PWA icon might show stale or incorrect channel-specific artwork, even when other icons like favicons and apple-touch-icon.png are correctly branded.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 05f07b6. Configure here.

Comment thread apps/marketing/src/layouts/Layout.astro
Comment thread apps/marketing/src/layouts/Layout.astro
@macroscopeapp

macroscopeapp Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved

Additive PWA configuration changes (manifest files, meta tags, icon asset, safe-area CSS) with no runtime logic impact. Review comments identify polish issues around theme consistency and safe area handling, but no functional or security concerns.

You can customize Macroscope's approvability policy. Learn more.

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

There are 3 total unresolved issues (including 2 from previous reviews).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 7aed8a2. Configure here.

<meta
name="viewport"
content="width=device-width, initial-scale=1.0, viewport-fit=cover"
/>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bottom safe area not handled

Medium Severity

Adding viewport-fit=cover makes the layout extend into the device’s unsafe regions, but only .nav gets env(safe-area-inset-top). The shared .footer still uses fixed bottom padding, so footer links can sit under the home indicator in standalone iPadOS/iOS after Add to Home Screen.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 7aed8a2. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant