Your TypeScript/JavaScript Playground Editor
Welcome to RunTS! A lightweight yet powerful TypeScript/JavaScript playground built with Tauri, React, and TypeScript. Write and run code instantly in an isolated worker environment with real-time output.
- Monaco Editor β the same editor powering VS Code, with full TypeScript support
- Live Tab Names β tab names derive from the first line of your code and update as you type
- Multi-tab Editor β manage multiple files with persistent tab state
- Real-time Execution β runs code in an isolated Web Worker with console output capture and source-mapped line numbers
- AI Assistant β chat with OpenAI, Anthropic, Google, or Mistral models directly inside the editor
- Command Palette β
Cmd+Kfor quick access to all editor actions - Themes & Appearance β custom themes, font settings, and layout options
- PWA Support β installable and works offline
- Shared Code URLs β share code snippets via URL
- Editor: Monaco Editor
- Frontend: React 19, TypeScript
- Desktop: Tauri
- Build Tool: Vite
- Styling: Tailwind CSS v4, shadcn/ui
- State Management: Zustand
- AI: Vercel AI SDK
- Code Transpilation: Babel Standalone
- Node.js v20 or above
- pnpm v10 or above
- Rust (only required for the Tauri desktop build)
git clone https://github.com/acbcdev/RunTS.git
cd RunTS
pnpm installpnpm dev # Web version (Vite dev server)
pnpm tauri:dev # Desktop app with hot reloadpnpm build # Production web build
pnpm tauri:build # Tauri desktop applicationTests run with Vitest:
pnpm test # Run test suite
pnpm test:ui # Open Vitest UIEditor preferences, theme, AI provider keys, and layout options are all configurable through the settings panel or Command Palette. Desktop-specific settings live in packages/app/src-tauri/tauri.conf.json.
Contributions are greatly appreciated! Please check the contribution guide before opening a pull request.
