diff --git a/README.md b/README.md index 9f915c371..42ff4175a 100644 --- a/README.md +++ b/README.md @@ -281,7 +281,14 @@ Captured from this machine to document the local development environment: 3. Proposed Lua file path 4. Adapter needed (yes/no) 5. Test expectations -- **Documentation reminders**: keep the doc updated with any new folder names, helper descriptions, or decisions so new contributors can follow the trail. + +### Lua Conversion & God Panel Mapping + +- God-level builders (Level 4 tabs) expose the `PackageManager` UI where admins install, enable, and disable packages (`Level4Tabs` → `PackageManager` in `frontends/nextjs/src/components`). +- `PackageManager` loads `PACKAGE_CATALOG`, drives the install/toggle APIs, and feeds catalog entries back into the God panel (`frontends/nextjs/src/lib/packages/package-catalog.ts` and `frontends/nextjs/src/components/PackageManager.tsx`). +- Catalog metadata mirrors the `packages/*/seed/metadata.json` format described in `packages/README.md`; new packages must follow that structure (metadata, components, optional static content) so the God panel can surface them. +- Default package metadata is pre-defined under `frontends/nextjs/src/lib/packages/package-glue/default-packages.ts` (admin_dialog, dashboard, forum_forge, etc.) to keep UI, Lua loaders, and catalog definitions aligned. +- See `docx/REFACTOR_PLAN.md` for the living plan that covers package design, metadata schema, tracking templates, tooling, and phase-by-phase deliverables for porting the frontend to Lua/metadata. #### Package Design Notes diff --git a/frontends/nextjs/src/components/level/Level1.tsx b/frontends/nextjs/src/components/level/levels/Level1.tsx similarity index 100% rename from frontends/nextjs/src/components/level/Level1.tsx rename to frontends/nextjs/src/components/level/levels/Level1.tsx diff --git a/frontends/nextjs/src/components/level/Level2.tsx b/frontends/nextjs/src/components/level/levels/Level2.tsx similarity index 100% rename from frontends/nextjs/src/components/level/Level2.tsx rename to frontends/nextjs/src/components/level/levels/Level2.tsx diff --git a/frontends/nextjs/src/components/level/Level3.tsx b/frontends/nextjs/src/components/level/levels/Level3.tsx similarity index 100% rename from frontends/nextjs/src/components/level/Level3.tsx rename to frontends/nextjs/src/components/level/levels/Level3.tsx diff --git a/frontends/nextjs/src/components/level/Level4.tsx b/frontends/nextjs/src/components/level/levels/Level4.tsx similarity index 100% rename from frontends/nextjs/src/components/level/Level4.tsx rename to frontends/nextjs/src/components/level/levels/Level4.tsx diff --git a/frontends/nextjs/src/components/level/Level5.tsx b/frontends/nextjs/src/components/level/levels/Level5.tsx similarity index 100% rename from frontends/nextjs/src/components/level/Level5.tsx rename to frontends/nextjs/src/components/level/levels/Level5.tsx diff --git a/frontends/nextjs/src/components/level/ModeratorPanel.tsx b/frontends/nextjs/src/components/level/panels/ModeratorPanel.tsx similarity index 100% rename from frontends/nextjs/src/components/level/ModeratorPanel.tsx rename to frontends/nextjs/src/components/level/panels/ModeratorPanel.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeEditorHeader.tsx b/frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeEditorHeader.tsx similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/NerdModeEditorHeader.tsx rename to frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeEditorHeader.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeEmptyState.tsx b/frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeEmptyState.tsx similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/NerdModeEmptyState.tsx rename to frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeEmptyState.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDEFileExplorer.tsx b/frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeIDEFileExplorer.tsx similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDEFileExplorer.tsx rename to frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeIDEFileExplorer.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDEHeader.tsx b/frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeIDEHeader.tsx similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDEHeader.tsx rename to frontends/nextjs/src/components/nerd-mode-ide/components/NerdModeIDEHeader.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDE.tsx b/frontends/nextjs/src/components/nerd-mode-ide/core/NerdModeIDE.tsx similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/NerdModeIDE.tsx rename to frontends/nextjs/src/components/nerd-mode-ide/core/NerdModeIDE.tsx diff --git a/frontends/nextjs/src/components/nerd-mode-ide/types.ts b/frontends/nextjs/src/components/nerd-mode-ide/core/types.ts similarity index 100% rename from frontends/nextjs/src/components/nerd-mode-ide/types.ts rename to frontends/nextjs/src/components/nerd-mode-ide/core/types.ts