--- name: project-overview description: What this repo is, who it's for, and the non-obvious constraints metadata: type: project --- This repo (`message-inbox-web-frontend-sdk`) is a **static frontend demo** of a Slack-grade team-messaging + inbox + support product, delivered as a reusable **React SDK** (`@lynkd/messaging-inbox-sdk`) plus a **Next.js demo app** (`apps/web`). **Non-obvious goals (from the requesting stakeholder):** - It must **look like** the LynkedUp Pro CRM dashboard (dark + amber accent `#FDA913`), and support **light AND dark** modes. The "Support Center" page especially should feel native to that CRM. - It must match **Slack's feature depth** (channels, DMs, threads, reactions, pins, mentions, presence, huddles, rich composer, scheduled send, search, saved) — as a **static** demo first (mock data, no real backend). - **Every feature toggled by an env flag** (`NEXT_PUBLIC_FEATURE_*`), and the **UI fully themeable** (accent/radius/gradient) via env or a live in-app panel, defaulting to the LynkedUp look. - Must use the **BFF pattern** (client requested this explicitly). Here the BFF = Next.js route handlers under `app/api/bff/**`. - Stack the stakeholder named: Next.js (frontend), NestJS (backend), Postgres/Supabase. For the static demo we use Next.js + the Next route-handler BFF only; NestJS/DB are a documented later swap, **not** built. - The real IIOS SDK/service lives at `D:\iios` and was used **only as reference** — this app is deliberately standalone and does not import or call it. See [[iios-relationship]]. Deadline context: originally requested as a ~2-hour demo. Prioritize a working, good-looking demo over completeness. See [[architecture-decisions]] and [[design-system]].