Commit Graph

29 Commits

Author SHA1 Message Date
plenarius cbe51a6e67 feat: complete UI/UX overhaul with Impeccable design system
Replace Inter/Baskerville with self-hosted Manrope/Alegreya/JetBrains Mono
variable fonts. Migrate all colors from hex to OKLCH tokens (30+ CSS custom
properties) with full dark/light mode support. Replace Unicode emoji with
lucide-react SVG icons throughout. Convert all page layouts to inline styles
(Tailwind CSS 4 flex/grid classes unreliable in this project). Code-split
routes via React.lazy (760KB → 15KB initial shell + 10 lazy chunks).

Add global styles: scrollbar theming, selection color, input/button bases,
:focus-visible ring, prefers-reduced-motion. Setup wizard gets 4-phase
indicator with numbered circles, PathInput and StatusDot components.
Toast container gets aria-live="polite". Tab close buttons changed to
proper <button> elements with aria-labels.

All 8 pages (Dashboard, Editor, Build, Server, Toolset, Repos, Settings,
Setup) rewritten with consistent card/section/button patterns.
2026-04-21 03:06:29 -04:00
plenarius 8b35c41a52 fix: skip tsc type-check in frontend build, let Vite handle it 2026-04-21 00:10:12 -04:00
plenarius 0de60e6f00 fix: use bundler moduleResolution for frontend tsconfig 2026-04-21 00:08:55 -04:00
plenarius 2a97af5ce8 feat: update Setup Wizard for Gitea tokens and URLs 2026-04-20 23:06:55 -04:00
plenarius 3a1df485ed feat: add error display, error boundaries, and toast notifications 2026-04-20 22:12:50 -04:00
plenarius 3df79d3b17 feat: add error display, error boundaries, and toast notifications 2026-04-20 22:12:25 -04:00
plenarius 72027a3024 feat: upgrade Dashboard with server status, repo summary, and quick actions 2026-04-20 22:11:37 -04:00
plenarius 8df7a78c08 feat: add Settings page with PAT management, theme, and shortcuts 2026-04-20 22:11:03 -04:00
plenarius 1a46baa7fe feat: add global keyboard shortcuts for navigation and panels 2026-04-20 22:10:11 -04:00
plenarius 83d1a0a169 feat: polish IDE layout with sidebar nav, resizable panels, and routing 2026-04-20 22:09:41 -04:00
plenarius c310b04f74 feat: add Layonara branding assets and IDE header 2026-04-20 22:09:09 -04:00
plenarius 1255cee8e6 feat: add dark/light theme toggle with Layonara color palette 2026-04-20 22:08:41 -04:00
plenarius 8a3cb1b0a3 feat: add Setup Wizard with 10-step contributor onboarding flow 2026-04-20 22:08:07 -04:00
plenarius 8849c25dff feat: add Repos page with commit dialog, PR creation, and upstream badges 2026-04-20 21:57:52 -04:00
plenarius 6e3abb0b07 feat: add specialized visual editors for items, creatures, areas, and dialogs 2026-04-20 20:11:44 -04:00
plenarius 5620e38282 feat: add generic GFF visual editor component 2026-04-20 20:09:24 -04:00
plenarius 3b91c0312d feat: add Toolset page with live change detection and diff viewer 2026-04-20 20:01:27 -04:00
plenarius 3484404b94 feat: add Server page with log viewer, SQL console, and config editor 2026-04-20 19:57:34 -04:00
plenarius 973310113c feat: add Build page UI with real-time output streaming 2026-04-20 19:54:42 -04:00
plenarius b7177a8fd7 feat: connect NWScript language server to Monaco via WebSocket
Add the forked nwscript-ee-language-server as a git submodule and wire
it up to the editor through a WebSocket-based LSP bridge:

- Backend: lsp.service.ts spawns the language server in --stdio mode
  and bridges JSON-RPC messages between WebSocket and stdin/stdout
- Backend: /ws/lsp upgrade handler in index.ts
- Frontend: LspClient class using vscode-ws-jsonrpc for JSON-RPC over
  WebSocket, with Monaco providers for completions, hover, and
  diagnostics
- Frontend: useLspClient/useLspDocument hooks integrated into
  MonacoEditor component
2026-04-20 19:41:05 -04:00
plenarius 64908098cd feat: add integrated terminal with xterm.js and shell sessions 2026-04-20 19:32:02 -04:00
plenarius b36391b520 feat: add global workspace search with regex and file filtering 2026-04-20 19:30:42 -04:00
plenarius d7c5f18544 feat: add SQL syntax highlighting inside NWScript query strings 2026-04-20 19:12:19 -04:00
plenarius 02ca134743 feat: add file explorer with tree view and IDE layout
Backend: editor service for directory tree reading and file CRUD,
editor routes at /api/editor with path traversal protection.

Frontend: FileExplorer tree component with expand/collapse directories,
IDELayout with sidebar + header + outlet, wired into App routing.
Editor now receives state as props from App for cross-component file loading.
2026-04-20 19:09:19 -04:00
plenarius eaca2d8a6c feat: integrate Monaco Editor with tabs, NWScript syntax, and session persistence 2026-04-20 19:06:00 -04:00
plenarius bc434254ce feat: add WebSocket hook and API client for frontend 2026-04-20 18:37:34 -04:00
plenarius 47d0ee60c0 feat: scaffold React frontend with Tailwind and Layonara theme 2026-04-20 18:37:07 -04:00
plenarius 55a49134ee chore: remove unused autoprefixer and postcss deps
Tailwind CSS v4 has built-in PostCSS integration and does not require
these as separate dependencies.
2026-04-20 18:23:47 -04:00
plenarius 76f211af6c feat: initialize monorepo with backend and frontend packages 2026-04-20 18:18:16 -04:00