No description
Find a file
Pat Hartl 08f5b5f76d
Some checks failed
LANCommander Release / prep (push) Failing after 17s
LANCommander Release / build_launcher_linux_x64 (push) Has been skipped
LANCommander Release / build_launcher_osx_arm64 (push) Has been skipped
LANCommander Release / build_launcher_osx_x64 (push) Has been skipped
LANCommander Release / build_launcher_win_arm64 (push) Has been skipped
LANCommander Release / build_launcher_win_x64 (push) Has been skipped
LANCommander Release / build_packager (push) Has been skipped
LANCommander Release / build_release (push) Has been skipped
LANCommander Release / build_server_linux_arm64 (push) Has been skipped
LANCommander Release / build_server_linux_x64 (push) Has been skipped
LANCommander Release / build_server_osx_arm64 (push) Has been skipped
LANCommander Release / build_server_osx_x64 (push) Has been skipped
LANCommander Release / build_server_win_arm64 (push) Has been skipped
LANCommander Release / build_server_win_x64 (push) Has been skipped
LANCommander Release / build_launcher_linux_arm64 (push) Has been skipped
Release notes for v2.1.7
2026-07-05 02:03:11 -05:00
.github Generate PowerShell completions in ui_tests CI job 2026-06-23 22:26:42 -05:00
LANCommander.AppHost Bump to .NET 10 2026-04-10 02:19:50 -05:00
LANCommander.AutoUpdater Bump to .NET 10 2026-04-10 02:19:50 -05:00
LANCommander.Build macOS build 2025-03-21 19:34:05 -05:00
LANCommander.CompletionGenerator Add completions for built-in PowerShell cmdlets 2026-05-10 20:56:17 -05:00
LANCommander.Documentation Release notes for v2.1.7 2026-07-05 02:03:11 -05:00
LANCommander.Launcher Load target view's data before transitioning 2026-07-05 01:29:56 -05:00
LANCommander.Launcher.Data Track tools per game 2026-06-27 11:51:55 -05:00
LANCommander.Launcher.IntegrationTests Remove old launcher, rename Avalonia launcher 2026-06-06 05:49:24 -05:00
LANCommander.Launcher.Legacy Fix unicode support for win9x 2026-05-23 21:07:28 -05:00
LANCommander.Launcher.Models Rework Tool installation / action resolution 2026-06-21 21:16:45 -05:00
LANCommander.Launcher.Services Avoid downloading depot images to disk, improve UI jank 2026-07-04 00:14:33 -05:00
LANCommander.Launcher.Services.Tests Fix reconciliation of library games based on user libraries enabled/disabled 2026-06-27 18:38:42 -05:00
LANCommander.Launcher.Settings Add big screen mode 2026-05-28 00:09:53 -05:00
LANCommander.Launcher.Tests Add GameDetailView visual baselines from Linux CI render 2026-06-24 18:48:19 -05:00
LANCommander.Launcher.Win9x Inital Win9x launcher commit 2026-05-13 02:00:14 +00:00
LANCommander.Packager Fix packager LCX upload 2026-06-04 22:03:18 -05:00
LANCommander.SDK Default to klling process if there's no spawned window 2026-07-04 15:07:13 -05:00
LANCommander.SDK.Cpp Fix includes 2026-05-23 16:58:45 -05:00
LANCommander.SDK.SourceGenerators Register cmdlets via source generated extension 2026-05-26 20:36:25 -05:00
LANCommander.SDK.Tests Replace INI parsing 2026-05-16 18:14:41 -05:00
LANCommander.Server Fix persisted data table page sizes 2026-07-04 14:51:11 -05:00
LANCommander.Server.Data Add limit options for saves, user storage, and download speed 2026-06-28 14:09:02 -05:00
LANCommander.Server.Data.MySQL Add limit options for saves, user storage, and download speed 2026-06-28 14:09:02 -05:00
LANCommander.Server.Data.PostgreSQL Add limit options for saves, user storage, and download speed 2026-06-28 14:09:02 -05:00
LANCommander.Server.Data.SQLite Add limit options for saves, user storage, and download speed 2026-06-28 14:09:02 -05:00
LANCommander.Server.ImportExport Fix importing legacy LCX files with no save paths defined 2026-07-02 18:14:46 -05:00
LANCommander.Server.Services Ensure game is updated when save path is added/updated/deleted 2026-07-04 14:26:25 -05:00
LANCommander.Server.Settings Add support for defining PowerShell modules 2026-06-28 23:02:35 -05:00
LANCommander.Server.Tests Fix tests, add tests for user limits 2026-06-28 14:09:34 -05:00
LANCommander.Server.UI.Tests Tests for first time setup creation of administrator account 2026-06-25 01:51:42 -05:00
LANCommander.ServiceDefaults Bump to .NET 10 2026-04-10 02:19:50 -05:00
LANCommander.Steam Add WebP support for media 2026-06-22 17:05:47 -05:00
LANCommander.UI Add support for defining PowerShell modules 2026-06-28 23:02:35 -05:00
PCGamingWikiClient Lookup player counts from PCGamingWiki for multiplayer modes 2023-01-14 18:22:51 -06:00
Scripts Add helper PowerShell scripts 2025-09-25 19:27:45 -05:00
.gitignore Enhance PowerShell completions with generated type definitions 2026-05-08 02:13:36 -05:00
CONTRIBUTING.md Update repository documentation 2026-06-06 06:35:49 -05:00
Directory.Packages.props Migrate flaky Playwright admin UI tests to bUnit 2026-06-24 20:45:21 -05:00
LANCommander.slnx Merge remote-tracking branch 'origin/main' into pr-396 2026-06-23 21:13:19 -05:00
LICENSE Create LICENSE 2024-03-24 15:57:40 -05:00
Microsoft.Common.props Ignore json files from all builds in solution 2024-08-22 01:13:02 -05:00
README.md Update repository documentation 2026-06-06 06:35:49 -05:00
SECURITY.md Update repository documentation 2026-06-06 06:35:49 -05:00
setup-vendor.ps1 Missing files for legacy launcher 2026-05-23 20:33:04 -05:00

LANCommander

GitHub Release GitHub commit activity GitHub Actions Workflow Status GitHub License Documentation Discord Support me on Patreon

Self-hosted game distribution - no internet required.

LANCommander is an open-source, self-hostable digital game platform. Host your own game library, distribute games across your local network, and let players browse and install from a polished desktop launcher. Originally built for LAN parties where internet access isn't available, but works anywhere you want a private game distribution platform.

Screenshots

Game Depot - browse popular games, genres, and new releases Game Detail - view game info, media, and launch games
Depot - browse by genre, popularity, and new releases Game detail view with media, description, and play controls
Game Library - your full collection at a glance Server Admin - web-based game management dashboard
Library shelf - your full game collection at a glance Server admin dashboard - manage games, users, and settings

Features

Game Distribution

  • Self-hosted game library - host and distribute games over your local network
  • No internet dependency - all assets served locally, perfect for closed networks
  • Multi-part archive uploads with chunked transfer for large games
  • Automatic metadata lookup from IGDB and SteamGridDB (covers, icons, backgrounds)
  • Redistributable management - bundle and auto-install Visual C++, .NET, DirectX, etc.

Desktop Launcher

  • Polished game browser with depot storefront, library shelf, and search/filtering
  • Download queue with progress tracking and install management
  • Cloud saves - automatic backup and restore of game save files
  • Auto-discovery - finds servers on your network via UDP beacon
  • Media viewer - browse screenshots and video trailers for each game
  • Discord Rich Presence integration
  • Offline mode support

Server Administration

  • Web-based dashboard built on ASP.NET Blazor
  • User management with registration, approval workflows, and role-based access
  • OpenID Connect authentication support
  • PowerShell scripting - pre/post install, pre/post launch hooks with a built-in editor
  • Dedicated server management with RCON support
  • Play session tracking and statistics

Game Packaging

  • Dedicated Packager tool with step-by-step wizard for creating game packages
  • Automatic metadata lookup - search IGDB and auto-fill game details
  • Registry capture and installer monitoring
  • Direct upload to your LANCommander server

Developer SDK

  • Published on NuGet - LANCommander.SDK
  • Build custom clients and tools with the .NET SDK
  • Full API access via dependency injection

Platform Support

Component Windows Linux macOS
Server x64, arm64 x64, arm64 x64, arm64
Launcher x64, arm64 x64, arm64 x64, arm64
Packager x86 - -

Note: The launcher is primarily tested on Windows. Linux and macOS builds are provided but may have limited functionality.

Quick Start

A Docker image is available on Docker Hub:

services:
  lancommander:
    image: lancommander/lancommander:latest
    container_name: lancommander
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      # Uncomment the line below to install SteamCMD
      # - STEAMCMD=1
      # Uncomment the line below to install WINE
      # - WINE=1
    volumes:
      - /path/to/app/data:/app/Data
    ports:
      - 1337:1337/tcp   # Web interface
      - 35891:35891/udp # Beacon broadcast
      - 213:213/udp     # IPX relay
    restart: unless-stopped

All config and uploaded game archives are stored in /app/Data.

Standalone

Download the latest release for your platform from the Releases page. The server is a self-contained binary with no external dependencies beyond a supported OS.

SteamCMD Support

The Docker image supports optional SteamCMD installation. Set STEAMCMD=1 to enable it. SteamCMD will be installed in /app/Data/Steam with cached credentials persisted across container restarts.

WINE Support

Set WINE=1 to install WINE with wine32, wine64, and winetricks support in the Docker container.

Note: The Docker image runs the Linux build. Features such as server management may be limited.

FAQ

How do I get games?

LANCommander is a management and distribution platform; it does not come bundled with any games. The best candidates are portable, DRM-free, freeware, shareware, or abandonware titles. Join our Discord where the community shares pre-packaged freeware games.

I have a large LAN party planned. What about scaling?

LANCommander communicates over HTTP(S). All downloads are served through standard API routes (/api/Games/{id}/Download), making it compatible with reverse proxies and LAN caching solutions.

Where can I get help?

  • Documentation: lancommander.app
  • Community: Discord - the best place for help with the platform, scripting, and game packaging

How do I contribute?

See CONTRIBUTING.md for build instructions and contribution guidelines. If you're not a developer, contributing to the documentation is a great way to help.

Roadmap

The following features are being considered for future releases:

  • Peer-to-peer file sharing of game files
  • Built-in VPN client/server for remote LAN parties
  • Integration with platforms such as Discord, TeamSpeak, Mumble

Community

License

LANCommander is licensed under the MIT License.