// Project page + Module library function ProjectPage({ projectId, onOpenBoard }) { const { PROJECTS, MODULES, ACTIVITY, AGENTS } = window.ORC_DATA; const project = PROJECTS.find(p => p.id === projectId) || PROJECTS[0]; const installed = [ { id: 'auth', name: 'Auth', installed: 'v2.4.0', latest: 'v2.4.0', status: 'live' }, { id: 'billing', name: 'Billing', installed: 'v1.1.4', latest: 'v1.2.0', status: 'update' }, { id: 'tickets', name: 'Tickets', installed: 'v2.9.0', latest: 'v3.0.1', status: 'update' }, { id: 'kb', name: 'Knowledge', installed: 'v2.1.0', latest: 'v2.1.0', status: 'live' }, { id: 'audit', name: 'Audit Trail', installed: 'v1.7.2', latest: 'v1.7.2', status: 'live' }, ]; const projectAgents = AGENTS.slice(0, 4); return (
{project.name[0]}

{project.name}

prj_{project.id} · region us-east-2 · 14 services · last deploy 6m ago

Modules
5/ 8
▲ 2 updates available
Active agents
4
all healthy
Tasks · 24h
38
36 ok · 1 review · 1 failed
P95 deploy
2m 14s
↓ 8% wk
Installed modules
{installed.map(m => (
{m.name}
{m.installed}{m.installed !== m.latest ? <> → {m.latest} : ''}
{m.status === 'update' ? update : m.status === 'live' ? live : idle}
{m.status === 'update' ? : }
))}
Recent activity last 1h
{ACTIVITY.map((a, i) => (
{a.time}
))}
Active agents {projectAgents.length} bound
{projectAgents.map(a => (
{a.kind[0].toUpperCase()}{a.kind[1].toUpperCase()}
{a.id}
{a.state} {a.tasks} tasks
))}
Pending approvals 2
TSK-3987 · Stripe v3 webhook handlers
+412 / −188 · 6 files
TSK-3988 · Backfill org_id on invoices
1 migration · affects DB
); } function ModuleLibrary() { const { MODULES } = window.ORC_DATA; const [filter, setFilter] = React.useState('all'); const filtered = filter === 'all' ? MODULES : filter === 'installed' ? MODULES.filter(m => m.installed) : filter === 'updates' ? MODULES.filter(m => m.status === 'update') : MODULES.filter(m => !m.installed); return (

Module library

Signed packages · install, update, or pin versions across projects

{[ { id: 'all', label: 'All', n: MODULES.length }, { id: 'installed', label: 'Installed', n: MODULES.filter(m => m.installed).length }, { id: 'updates', label: 'Updates', n: MODULES.filter(m => m.status === 'update').length }, { id: 'available', label: 'Available', n: MODULES.filter(m => !m.installed).length }, ].map(t => ( ))} registry: registry.orchestra.prod · synced 4m ago
{filtered.map(m => (
{m.icon}
{m.name}
@orchestra/{m.id} · {m.version}
{m.status === 'update' && update available} {m.status === 'live' && installed} {m.status === 'failed' && install failed} {m.status === 'idle' && available} {m.status === 'new' && beta}

{m.desc}

{m.size} bundle {m.deps} deps signed by {m.signedBy}
{m.status === 'update' ? ( <> ) : m.status === 'live' ? ( <> ) : m.status === 'failed' ? ( <> ) : ( <> )}
))}
); } window.ProjectPage = ProjectPage; window.ModuleLibrary = ModuleLibrary;