Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

219 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Drathos

Drathos

DRM-Free Game Library Client

Self-hosted · Cross-platform · Open Source

Latest release Downloads Stars Windows Linux License

Electron · React · Tailwind · Vite




Why Drathos?

Most game launchers tie you to DRM, forced online accounts, or a proprietary store. Drathos flips that around. It's a self-hosted, DRM-free game library client built with Electron and React that connects to a backend server you own and run yourself — so your collection stays entirely under your control.

Manage, download, and sync your games with no third-party DRM and no forced login. Play at your desk with keyboard and mouse, or lean back on the couch with a controller in Big Picture mode. Installed games stay launchable even when your server is offline.



Screenshots

Home

Home — stats & recently played

Library

Library — details, launch options & mods

Big Picture mode

Big Picture — controller-first couch mode

Settings

Settings — themes, language & more



Features

 Game LibrarySearch and browse your catalog · Filter by genre, status, playtime, or multiplayer · Track each game as Backlog / Playing / Completed / Dropped
 Controller & Big PictureNavigate the entire app with a gamepad · Full-screen, console-style Big Picture library · Per-game display selection · Custom launch arguments
 Game LauncherOne-click launch · Wine support on Linux · Install, uninstall, open folder, create desktop shortcut · Stop a running game at any time
 DownloadsQueue-based installer with real-time progress · Pause, resume, cancel · SHA-256 verification before extraction · Continues in the background while you navigate
 CollectionsGroup games into custom collections · Cover mosaic preview · Name, icon, and description per collection
 StatsTotal playtime, session count, and recently played — all visible from the home screen
 User ManagementView all users, assign roles (Admin / Moderator / Member), manage invite codes, search and sort by playtime or activity (admin only)
 SettingsProfile picture · Language (EN / FR / DE / ES) · 5 built-in themes · Download path, notifications, cache, close-to-tray, SSL
 Offline ModeAll installed games stay launchable · Pending actions sync automatically when the server is back
 Security & UpdatesEncrypted token storage (safeStorage) with refresh rotation · TOFU certificate pinning for self-hosted servers · Automatic updates via GitHub Releases


Getting Started

Download

Pre-built installers for Windows (.exe) and Linux (.AppImage, .deb, .pacman) are available on the Releases page. The app updates itself automatically from there.

A running Drathos backend instance is required — enter its address on first launch.

Build from source

Prerequisites: Node.js ≥ 20 · A running Drathos backend instance

git clone https://github.com/Valt1-0/drathos.git
cd drathos
npm install
cp .env.example .env   # set your backend URL
npm run dev            # development mode

Package installers

npm run dist           # build for the current platform
npm run dist:win       # Windows  (NSIS installer)
npm run dist:linux     # Linux    (AppImage + DEB + PACMAN)
npm run dist:mac       # macOS    (DMG)


Architecture

flowchart TD
    U["🎮 You — keyboard, mouse or controller"] --> APP

    subgraph APP["Drathos Desktop App · Electron"]
        R["React UI<br/>library · downloads · Big Picture"]
        M["Main process<br/>launcher · download queue · updater"]
        R <--> M
    end

    APP -->|"REST + WebSocket (TLS)"| API["Drathos Backend · Node.js"]
    API --> DB[("MongoDB<br/>users · games · collections")]
    API --> ST["Game Storage"]
    APP -->|"auto-update"| GH["GitHub Releases"]
Loading

The desktop client is fully self-contained: it handles game launching, the download queue, and updates locally, and talks to your backend only for catalog, auth, and sync. Installed games remain playable with no connection at all.



Tech Stack

Layer Technology
Runtime Electron 43 (Chromium + Node.js)
UI React 19 · React Router 7 · Framer Motion
Styling Tailwind CSS 4 with a themeable design system
Build electron-vite · Vite 7 · electron-builder
State & data React Context · electron-store · Socket.IO
i18n i18next — English, French, German, Spanish
Quality ESLint · Prettier · Vitest · GitHub Actions CI


Roadmap

  • Windows & Linux builds (NSIS · AppImage · DEB · PACMAN)
  • Full controller navigation & Big Picture mode
  • Offline mode with background sync
  • Automatic updates via GitHub Releases
  • Collections, mods, and multi-user roles
  • In-app patch notes viewer
  • Additional interface languages

Suggestions and feature requests are welcome — open an issue.



Changelog

v1.2.0 — Game screenshots · Big Picture split into modules & lazy-loaded · Uninstall syncs across every view · Gamepad focus & navigation fixes · fast-uri security pin

v1.1.0 — Full controller navigation · Big Picture mode · Per-game display selection · Custom launch arguments · Close to system tray · Safer default install folder · GitHub issue bug reports · Electron 43

v1.0.0 — Open source release · GPL-3.0 licence · Security hardening (safeStorage, token refresh, CSP) · 4-language i18n (EN / FR / DE / ES) · Auto-update via GitHub Releases

v0.8.0 — Desktop shortcuts · Loading animations · Accessibility improvements · Disk space monitoring · Game watchdog

v0.7.0 — User role management · User status & filters · QuickLaunch overlay · Docker build support

v0.6.0 — Advanced game filtering · Adaptive offline detection · Notification system · Self-signed SSL support

v0.5.0 — Mod management (upload, install, uninstall) · User profiles · Connection status in settings

v0.4.0 — Collections — group games into custom collections · UI improvements

v0.2.0 — Initial release · EN/FR i18n · Virtualized game library · Download manager



Legal Disclaimer

Drathos is a self-hosted client application — it does not host, distribute, or provide access to any games or content. It connects exclusively to a backend server that you own and operate yourself.

You are solely responsible for ensuring that any content uploaded to your server complies with applicable copyright laws and the terms of any relevant licenses. The developers of Drathos do not condone piracy or any unauthorized distribution of copyrighted material.

This software is provided "as is", without warranty of any kind. See the LICENSE for details.



Contributing

Contributions are welcome. See CONTRIBUTING.md for development setup and pull request guidelines, and read the Code of Conduct before participating. To report a vulnerability privately, see SECURITY.md.




Built with ❤️ by Valt
drathos.vercel.app · github.com/Valt1-0/drathos