A lightweight IDE built with Electron, React, TypeScript, and Monaco Editor.
- File tree explorer
- Monaco code editor with syntax highlighting
- Integrated terminal
- Code execution (Python, JavaScript, TypeScript)
- Git integration (status, stage, commit, branches)
- LSP support (TypeScript/JavaScript, Python)
- Multiple file tabs
- Node.js >= 18.x
- npm >= 9.x
- Python 3 (optional, for Python LSP support)
npm installThis installs all required packages including the TypeScript language server.
TypeScript/JavaScript LSP is included automatically via npm.
Python LSP requires a separate install:
# Option A: Use the setup script
npm run setup:lsp
# Option B: Install manually
pip install python-lsp-servernpm run devThis will:
- Build the main process
- Start the Vite dev server
- Launch Electron
npm run buildOutput will be in the release/ directory.
subpar_editor/
├── src/
│ ├── main/ # Electron main process
│ │ ├── main.ts # Entry point
│ │ ├── preload.ts # IPC bridge
│ │ ├── ipc/ # IPC handlers
│ │ ├── git/ # Git service
│ │ └── lsp/ # LSP server management
│ │
│ ├── renderer/ # React app (renderer process)
│ │ ├── App.tsx # Main layout
│ │ ├── components/ # React components
│ │ ├── store/ # Zustand state management
│ │ ├── lsp/ # LSP client
│ │ └── styles/ # CSS styles
│ │
│ └── shared/ # Shared types
│ └── types.ts
│
├── scripts/
│ └── setup-lsp.js # LSP setup helper
│
└── package.json
| Script | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run build:main |
Build main process only |
npm run setup:lsp |
Install Python LSP |
| Shortcut | Action |
|---|---|
Ctrl+S / Cmd+S |
Save file |
Ctrl+Space |
Trigger autocomplete |
Ctrl+Shift+Space / Cmd+Shift+Space |
Trigger inline suggestions |
F12 |
Go to definition |
TypeScript LSP:
# Verify it's installed
npx typescript-language-server --versionPython LSP:
# Verify it's installed
pylsp --version
# If not found, install it
pip install python-lsp-servernode-pty requires native compilation. Ensure you have build tools:
Windows:
npm install --global windows-build-toolsmacOS:
xcode-select --installLinux:
sudo apt-get install build-essential- Electron - Desktop application framework
- React - UI framework
- TypeScript - Type safety
- Monaco Editor - Code editor (VS Code's editor)
- xterm.js - Terminal emulator
- node-pty - PTY for terminal
- Zustand - State management
- simple-git - Git operations
- vscode-jsonrpc - LSP communication
- Vite - Build tool