ZeusXR Shell

Shared topbar + sidebar for all ZeusXR apps. This domain serves the shell assets — it is not a user-facing page.

Hosted files:
/shell.js — component loader
/shell.css — styles

Embed

<div id="zeusxr-shell"></div>
<script>
  window.ZeusShellConfig = {
    currentApp: 'labs',            // labs | portfolio | networking | marketplace | cinema | news
    user: {
      avatarUrl: '...',            // profile picture URL
      name: 'Daniel',             // display name
      handle: 'daniel',           // @handle (used for profile link)
      notificationCount: 3        // badge count (0 = no badge)
    },
    onBurgerClick: () => { ... }, // optional — host opens its own sidebar
    onAiClick:     () => { ... }  // optional — defaults to labs.zeusxr.com/?ai=1
  };
</script>
<script src="https://zeusxr-shell.pages.dev/shell.js" defer></script>

// Public API (call after init):
// ZeusShell.setUser({ avatarUrl, name, handle, notificationCount })
// ZeusShell.setNotificationCount(n)
// ZeusShell.setAvatar(url)
// ZeusShell.setTheme('dark' | 'light')