System requirements
Operating system
GameLord currently supports macOS 11+ only. Windows and Linux support is planned for a future release.
- macOS 11 Big Sur or later
- Apple Silicon (M1/M2/M3) or Intel processor
Software dependencies
- Node.js 18+ - JavaScript runtime (download)
- pnpm 10+ - Fast, disk space efficient package manager
- Git - Version control (usually pre-installed on macOS)
Hardware recommendations
- RAM: 8GB minimum, 16GB recommended
- GPU: Integrated graphics sufficient for most systems; dedicated GPU recommended for intensive shaders
- Display: Any resolution; high refresh rate displays (120Hz+) supported with vsync-aligned rendering
Installing dependencies
Install Node.js
Install pnpm
Clone the repository
Install project dependencies
apps/desktop- The main Electron applicationpackages/ui- Shared UI components
Build the native addon
GameLord uses a native Node.js addon to load libretro cores directly. This must be compiled for your system:The build process uses
node-gyp to compile C++ code. On macOS, this requires Xcode Command Line Tools, which are usually installed automatically.Troubleshooting native addon build
If you encounter build errors:Error: 'node-gyp' not compatible with Node.js 24+
Error: 'node-gyp' not compatible with Node.js 24+
The bundled
node-gyp in npm versions 5.x is too old for Node.js 24+.Solution: Always use npx node-gyp instead of npm run build in the native directory:Error: 'Python not found'
Error: 'Python not found'
node-gyp requires Python 3.x.Solution: Install Python:Error: 'Cannot find module gamelord_libretro.node'
Error: 'Cannot find module gamelord_libretro.node'
The native addon wasn’t built or is in the wrong location.Solution: Rebuild the addon:
Configuration
Environment variables
Create a.env file in apps/desktop/:
apps/desktop/.env
Application directories
GameLord stores data in standard macOS locations:| Type | Path |
|---|---|
| Library database | ~/Library/Application Support/GameLord/library.db |
| Libretro cores | ~/Library/Application Support/GameLord/cores/ |
| BIOS files | ~/Library/Application Support/GameLord/BIOS/ |
| Save states | ~/Library/Application Support/GameLord/saves/ |
| Save RAM | ~/Library/Application Support/GameLord/saves/ |
| Screenshots | ~/Library/Application Support/GameLord/screenshots/ |
| Cover art cache | ~/Library/Application Support/GameLord/artwork/ |
| Extracted ROMs | ~/Library/Application Support/GameLord/roms-cache/ |
These directories are created automatically on first launch.
BIOS files
Some systems require BIOS files for emulation:- Sega Saturn:
sega_101.bin,mpr-17933.bin - PlayStation:
scph5500.bin,scph5501.bin,scph5502.bin - Nintendo DS:
bios7.bin,bios9.bin,firmware.bin
~/Library/Application Support/GameLord/BIOS/.
Running GameLord
Development mode
Start the app with hot reloading:electron-vite dev- Builds and watches main/renderer/preload processes- Launches Electron with the development build
Production build
Build the app for distribution:apps/desktop/out/.
Other useful commands
Project structure
Next steps
Quickstart
Get your first game running quickly
Architecture
Learn about GameLord’s technical design
Playing games
Learn how to play and manage games
API Reference
Explore the developer API