🖥️ GLMPilot Client
The client package contains the React SPA that powers the browser-based IDE interface.
Key Responsibilities
- IDE Shell: The main workspace interface (
IDEShell.tsx) containing the file explorer, Monaco editor, and terminal panes. - Code Editing: Integrates
@monaco-editor/reactto provide a VS Code-like editing experience with syntax highlighting and autocompletion. - Live Web Preview: Supports real-time rendering of HTML/JS/CSS within an iframe or a new tab.
- State Management: Uses
zustandstores located insrc/stores/to manage complex client-side state efficiently without extensive prop-drilling. Stores typically manage:- Editor state (open files, current contents)
- Chat state (conversation history with ASI-1)
- Settings (user preferences, environment choices)
Tech Stack
- Framework: React 18
- Bundler: Vite
- Styling: Tailwind CSS
- Routing: React Router
- Global State: Zustand
- Editor: Monaco Editor
Development
Run npm run dev (or npm run dev:client from the root) to start the Vite development server.