A beautiful game launcher for managing Steam Proton versions and games.
Lacquer is a cross-platform Electron application that lets you browse, install, and manage GE-Proton versions, build a personal game library with per-Proton-version configurations, and launch your Windows games on Linux with ease.
- Proton Manager — Browse, install, and remove GE-Proton versions. Stores configs in
~/.lacquer/proton/(Windows) orcompatibilitytools.d(Linux). - Game Library — Add, play, and delete games. Each game remembers which Proton version to use.
- Download Manager — Real-time progress with speed, size, and ETA. Downloads survive page navigation via a global
DownloadContext. - Steam Flatpak Detection — Automatically detects Steam installed via Flatpak.
- 9 Built-in Themes — Midnight, Light, Dracula, Nord, Catppuccin, Tokyo Night, Rose Pine, Gruvbox, One Dark.
- Glass-morphism UI — Smooth animations, backdrop blur, and a modern frosted-glass aesthetic.
- Changelog Viewer — Read release notes directly from Settings.
- Frameless Window — Draggable titlebar with a clean, borderless look.
- Electron Security — contextIsolation, sandbox, webSecurity, CSP, and permission handler are hardened.
- Multi-distro Linux Builds — AppImage, deb, rpm, and pacman packages.
- Node.js >= 18
- npm or yarn
git clone https://github.com/yourusername/lacquer.git
cd lacquer
npm installnpm run electron:devStarts the Vite dev server and launches the Electron window with hot-reload.
# Build renderer + Electron
npm run build
# Package for current platform
npx electron-builder
# Platform-specific
npm run electron:build:win
npm run electron:build:linux:appimage
npm run electron:build:linux:deb
npm run electron:build:linux:rpm
npm run electron:build:linux:arch- Proton Tab — Download any GE-Proton release from the list. Installed versions are marked.
- Library Tab — Drag & drop or browse for game executables. Assign a Proton version and launch.
- Downloads Tab — Monitor active downloads with real-time progress.
- Settings — Change theme, view changelog, configure your profile.
Data is automatically saved to ~/.lacquer/config.json.
| Layer | Technology |
|---|---|
| Frontend | React 19, TypeScript, TailwindCSS, Vite |
| Desktop | Electron 35, electron-builder |
| Styling | PostCSS, Autoprefixer, clsx, lucide-react |
| Packaging | AppImage / deb / rpm / pacman (Linux), NSIS (Windows) |
lacquer/
├── electron/ # Electron main process (IPC, Proton management)
├── src/ # React renderer (UI, contexts, components)
│ ├── components/ # Reusable UI components
│ ├── contexts/ # React contexts (downloads, settings, etc.)
│ └── types/ # TypeScript type definitions
├── resources/ # App icons and assets
├── public/ # Static public assets
├── scripts/ # Build/utility scripts
├── dist-electron/ # Compiled Electron main process
├── dist/ # Compiled renderer
├── release/ # Packaged installers
├── update.txt # Changelog
└── vite.config.ts # Vite configuration
Copyright © 2026 Lacquer Contributors. All rights reserved.
This project is licensed under the MIT License — see below for details.
Unauthorized copying, modification, distribution, or use of this software, or any portion of it, may result in legal action.
MIT License
Copyright (c) 2026 Lacquer Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
This repository and all its contents are protected under the Digital Millennium Copyright Act (DMCA). If you believe any content in this repository infringes your copyright, please submit a DMCA takedown notice to the repository owner with the following information:
- A physical or electronic signature of the copyright owner or authorized agent.
- Identification of the copyrighted work claimed to have been infringed.
- Identification of the material claimed to be infringing and its location in the repository.
- Your name, address, telephone number, and email address.
- A statement that you have a good faith belief that the use is not authorized.
- A statement, under penalty of perjury, that the information in the notice is accurate.
Any unauthorized reproduction, redistribution, or modification of this software, in whole or in part, is strictly prohibited and may result in legal prosecution under applicable copyright law.
Contributions are welcome. Please open an issue or pull request.
- Fork the repository.
- Create a feature branch (
git checkout -b feat/your-feature). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feat/your-feature). - Open a Pull Request.
Built with React, Electron, and 💜