# WSL UI A lightweight desktop application to manage Windows Subsystem for Linux (WSL) distributions. Built with [Tauri](https://tauri.app/) (Rust) and [React](https://react.dev/) (TypeScript). **Developed by [Octasoft Ltd](https://www.octasoft.co.uk)** | **[Website](https://wsl-ui.octasoft.co.uk)** [![Watch the demo](https://img.youtube.com/vi/q59ZtKr7aqw/maxresdefault.jpg)](https://youtu.be/q59ZtKr7aqw) ## Features - **Dashboard** - View all distributions with real-time status, CPU, memory, and disk usage - **Quick Actions** - Terminal, file explorer, IDE, restart, export, clone - **Install from Anywhere** - Microsoft Store, Docker/Podman images, LXC catalog, custom URLs - **Backup & Restore** - Export, import, and clone distributions - **Custom Actions** - Define reusable commands with variable substitution - **WSL Settings** - Edit `.wslconfig` and `wsl.conf` from a visual interface - **17 Themes** - Dark, light, and custom themes with live preview - **System Tray** - Minimize to tray for quick access - **Disk Mounting** - Mount VHD files and physical disks into WSL See the [User Guide](docs/USER-GUIDE.md) for detailed features and screenshots. ## Language Support WSL UI is available in multiple languages. The app automatically detects your system language, or you can switch manually from the settings. | Language | Native Name | |----------|-------------| | English | English | | Arabic | العربية | | Chinese (Simplified) | 简体中文 | | Chinese (Traditional) | 繁體中文 | | French | Français | | German | Deutsch | | Hindi | हिन्दी | | Japanese | 日本語 | | Korean | 한국어 | | Polish | Polski | | Portuguese (Brazil) | Português (Brasil) | | Russian | Русский | | Spanish | Español | | Turkish | Türkçe | Don't see your language? [Open an issue](https://github.com/octasoft-ltd/wsl-ui/issues) to request it. ## Installation ### From Microsoft Store [![Get it from Microsoft Store](https://get.microsoft.com/images/en-us%20dark.svg)](https://apps.microsoft.com/detail/9p8548knj2m9) ### From Releases Download the latest installer from the [Releases](https://github.com/octasoft-ltd/wsl-ui/releases) page. For MSIX installation outside the Store, download the signed `.msix`, matching `.cer`, and `Install-WSL-UI_.ps1`. Follow the [MSIX installation instructions](docs/MSIX-SIGNING.md) for the one-time certificate trust step. Packages ending `_store.msix` are unsigned and intended for Store submission. ### From Source **Prerequisites:** [Node.js](https://nodejs.org/) 26 (Node 24 remains a tested fallback), [Rust](https://rustup.rs/), Windows (not WSL) ```bash git clone https://github.com/octasoft-ltd/wsl-ui.git cd wsl-ui npm install npm run tauri dev ``` ## Documentation - [User Guide](docs/USER-GUIDE.md) - Features, screenshots, and how-to guides - [Troubleshooting](docs/TROUBLESHOOTING.md) - Solutions to common issues - [Privacy Policy](docs/PRIVACY.md) - How we handle your data (we don't collect any) - [Contributing](CONTRIBUTING.md) - How to contribute to the project ## Development ### Project Structure ``` wsl-ui/ ├── src/ # React frontend │ ├── components/ # UI components │ ├── services/ # Tauri API wrappers │ ├── store/ # Zustand state management │ └── test/e2e/ # WebDriverIO E2E tests ├── src-tauri/ # Rust backend │ └── src/ # Tauri commands and WSL logic └── crates/wsl-core/ # Shared WSL parsing library ``` ### Tech Stack | Layer | Technology | Purpose | |----------|-------------------|------------------------------| | Desktop | Tauri 2.x | Native window, system access | | Frontend | React 19 + Vite | UI components | | Styling | Tailwind CSS | Utility-first CSS | | Backend | Rust | WSL command execution | | State | Zustand | State management | ### Scripts ```bash npm run tauri dev # Development mode npm run tauri build # Production build npm run test:run # Unit tests npm run test:e2e:dev # E2E tests (mock mode) ``` ## License This project is licensed under the GNU General Public License v3.0 (GPL-3.0) - see the [LICENSE](LICENSE) file for details. - **Free and open source** software - **Copyleft** — derivative works must also be open source under GPL-3.0 - **Source code** must be provided with any distribution ### Trademark Notice "WSL UI" and "Octasoft" are trademarks of Octasoft Ltd. See the [TRADEMARK](TRADEMARK) file for usage requirements for forks and derivative works. ## Links - [Website](https://wsl-ui.octasoft.co.uk) - [Report Issues](https://github.com/octasoft-ltd/wsl-ui/issues) - [Security Policy](SECURITY.md) - [Changelog](CHANGELOG.md) - [Credits](CREDITS.md)