NexBrowser Pro (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/shadownrx/windows/llms.txt
Use this file to discover all available pages before exploring further.
BrowserApp.tsx) is the integrated web browser that runs inside a NEX OS window. Styled after Google Chrome, it provides a full multi-tab browsing experience complete with an omnibar, bookmarks bar, per-tab navigation history, YouTube video playback, and Google Slides presentation embedding. Tab state — including the complete per-tab history stack — is persisted to localStorage under the key nex_browser_tabs_v3, so your open tabs survive a page refresh.
Features
Multi-Tab Browsing
Open, close, and switch between unlimited tabs. Each tab maintains its own independent navigation history stack, favicon, and title. Tabs persist across sessions via
localStorage.YouTube Video Playback
YouTube videos are embedded using
youtube-nocookie.com iframe embeds. The video continues playing even when you switch to a different tab or move the browser window, because all tab iframes are mounted simultaneously and hidden with CSS rather than unmounted.Per-Tab History
Each tab tracks its full navigation history as an indexed stack of
HistoryEntry objects. Back and forward navigation move through this per-tab stack without affecting other tabs.Bookmarks Bar
A persistent bookmarks bar sits below the toolbar. Default bookmarks include Google, YouTube, Google Slides, and GitHub. Add or remove bookmarks using the star icon in the omnibar. Bookmarks persist via
localStorage.Google Slides Support
Paste a Google Slides URL (
docs.google.com/presentation/d/…/edit) to embed the presentation directly. Toggle between slide view mode and fullscreen presentation mode using the toolbar buttons.Address Bar Navigation
The omnibar accepts full URLs and plain search queries. HTTPS URLs show a lock icon (
LockClosed16Regular); non-secure URLs show an info icon. The progress bar animates during page load.Persistent Iframe Architecture
One of NexBrowser Pro’s most important engineering decisions is how it handles multiple tabs with active content. All tab iframes are rendered simultaneously in the DOM — one per tab that has a loaded URL. The active tab’s iframe is visible; all others are hidden withdisplay: none. This means:
- YouTube keeps playing when you switch tabs, because the iframe is never unmounted.
- No reload on tab switch — the browser does not re-fetch the page when you return to a tab.
- State is preserved — forms, scroll positions, and video playback progress survive tab switches.
YouTube Search Integration
When you navigate toyoutube.com in NexBrowser Pro, the browser detects that YouTube’s homepage cannot be embedded in an iframe (due to X-Frame-Options restrictions) and automatically renders the built-in YouTubeSearch component instead. This component connects to the /api/youtube/search endpoint (available in development) and lets you search for videos and playlists. Selecting a result loads the youtube-nocookie.com embed URL directly into the active tab’s iframe.
URL Resolution via browserUrls.ts
All URL navigation passes through the resolveBrowserUrl() function from src/utils/browserUrls.ts. This utility:
- Detects whether the URL is a YouTube link and converts it to a
youtube-nocookie.comembed URL. - Detects Google Slides URLs and converts them to the embedded
/embedor/presentformat. - Detects Google Docs and Sheets and generates appropriate embed URLs.
- Checks whether the domain is in the blocked-by-iframe list (
isBlockedByIframe()). - Resolves a
titleHintfor the tab title and afaviconURL.
Internet Explorer (Retro App)
NEX OS also includesIEApp.tsx — a separate, nostalgic Internet Explorer–style browser. It uses the classic IE toolbar layout, the blue e logo, and the characteristic IE navigation UI. Like NexBrowser Pro, it runs inside a NEX OS window and supports embedding compatible URLs. It is available as a standalone app from the Start Menu and can be launched with ./ie.nex from either terminal.
Browser Limitations
NexBrowser Pro runs websites inside an
<iframe> within a NEX OS window, which is itself running inside your real browser. This means:- Sites that send
X-Frame-Options: DENYorContent-Security-Policy: frame-ancestors 'none'cannot be embedded and will show the “Cannot display this site” error card with an option to open in your real browser. - Cross-origin JavaScript communication between the NEX OS application and the embedded site is restricted by standard browser same-origin policies.
- YouTube videos where the owner has disabled embedding will show an error overlay inside the player, detectable via the YouTube IFrame Player API
postMessageevent codes101and150.