rstack-online/backlog/tasks/task-5 - Standardize-AppSwi...

2.6 KiB

id title status assignee created_date updated_date labels dependencies priority
TASK-5 Standardize AppSwitcher, EcosystemFooter, and Header across all rApps Done
2026-02-25 07:15 2026-02-25 07:15
ecosystem
ui
consistency
high

Description

Ensure every r*App has the same header (AppSwitcher / SpaceSwitcher / actions / UserMenu), the same AppSwitcher dropdown with all 26 apps in 8 categories, and the same EcosystemFooter with full app links.

Acceptance Criteria

  • #1 All 26 r*Apps listed in AppSwitcher with 8 categories
  • #2 EcosystemFooter component created and deployed to all 16 Next.js repos + 4 static HTML sites
  • #3 Header component (Header.tsx + SpaceSwitcher.tsx + UserMenu.tsx) standardized across 15 Next.js repos
  • #4 EncryptID allowedOrigins updated with all 26 domains
  • #5 UserMenu nests Sign Out under username dropdown
  • #6 All repos committed and pushed to Gitea

Final Summary

What was done

AppSwitcher (26 apps, 8 categories)

Updated the canonical AppSwitcher.tsx with all r*Apps organized into: Creating, Planning, Communicating, Deciding, Funding & Commerce, Social & Media, Work & Productivity, Identity & Infrastructure. Rolled out to 15 Next.js repos + rswag + 4 static HTML sites.

EcosystemFooter

Created EcosystemFooter.tsx component with all 26 app links and current prop for highlighting. Replaced inline footers in all 15 Next.js repos. Updated static HTML footers in rstack-online, rwallet-online, rphotos-online, ridentity-online.

Header standardization

Created 3 portable, SDK-free shared components:

  • Header.tsx — nav bar with current prop and actions slot
  • SpaceSwitcher.tsx — community/space dropdown (uses /api/spaces fetch)
  • UserMenu.tsx — Sign In link or avatar dropdown with nested Sign Out

Replaced all inline <nav>, <Navbar>, <header> blocks in 15 Next.js repos with <Header current="appId" actions={...} />.

EncryptID

Added 9 missing domains to allowedOrigins in rspace-online/src/encryptid/server.ts: rcal, rinbox, rmail, rsocials, rwork, rforum, rchoices, rswag, rdata.

Repos updated (21 total)

rspace-online, rnotes-online, rauctions-online, rcal-online, rcart-online, rchats-online, rinbox-online, rmail-online, rmaps-online, rsocials-online, rtrips-online, rvote-online, rwork-online, rPubs-online, rfunds-online, rtube-online, rswag, rphotos-online, ridentity-online, rwallet-online, rstack-online