Complete Stackless parity: Activity, Deploy, Settings, header desc

- Add project description line to project header (from productVision)
- Sidebar: add Activity nav item (Projects / Activity / Settings)
- New Activity page: timeline feed with type filters (Atlas/Builds/Deploys/You)
- New Activity layout using VIBNSidebar
- Rewrite Deploy tab: Project URLs, Custom Domain, Env Vars, Deploy History
  — fully Stackless style, real data from project API, no more MOCK_PROJECT
- Rewrite Project Settings tab: remove all Firebase refs (db, auth, Firestore)
  — General (name/description), Repo link, Collaborators, Export JSON/PDF,
  — Danger Zone with double-confirm delete
  — uses /api/projects/[id] PATCH for saves

Made-with: Cursor
This commit is contained in:
2026-03-02 16:33:09 -08:00
parent 59c8ec2e02
commit d60d300a64
7 changed files with 595 additions and 366 deletions

View File

@@ -11,6 +11,7 @@ interface ProjectShellProps {
workspace: string;
projectId: string;
projectName: string;
projectDescription?: string;
projectStatus?: string;
projectProgress?: number;
discoveryPhase?: number;
@@ -84,6 +85,7 @@ export function ProjectShell({
workspace,
projectId,
projectName,
projectDescription,
projectStatus,
projectProgress,
discoveryPhase = 0,
@@ -137,6 +139,16 @@ export function ProjectShell({
</h2>
<StatusTag status={projectStatus} />
</div>
{projectDescription && (
<p style={{
fontSize: "0.75rem", color: "#a09a90", marginTop: 1,
fontFamily: "Outfit, sans-serif",
overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap",
maxWidth: 400,
}}>
{projectDescription}
</p>
)}
</div>
</div>
<div style={{