Easy to use AI model library that links your models to other apps in the launcher, and other QOL improvements.
- A single portable model library with rich metadata
- Links your apps to your library, no manual setup required
- System and per-app resource monitoring
- Search and download new models into your library
- Install and run different app versions with ease
- Smart system shortcuts that don't require the launcher to work
- Ghost bust the background servers when closing apps
- And other technical mumbo-jumbo
Pumas Library uses a modern Electron + Python sidecar architecture:
- Frontend: React 19 + Vite (rendered in Electron's Chromium)
- Desktop Shell: Electron 38+ with native Wayland support
- Backend: Python 3.12+ running as a sidecar process
- IPC: JSON-RPC communication between Electron and Python
- Operating System: Linux (Debian/Ubuntu-based distros recommended)
- Python: 3.12+
- Node.js: 24+ LTS
Run the automated installation script:
./install.shThe installer will:
- Check and install system dependencies (with your permission)
- Create a Python virtual environment
- Install Python dependencies
- Install and build the frontend
- Create the launcher script
If you prefer to install manually:
-
Install system dependencies (Debian/Ubuntu):
sudo apt update sudo apt install python3.12 python3.12-venv nodejs npm
-
Create Python virtual environment:
python3.12 -m venv venv source venv/bin/activate -
Install Python dependencies:
pip install --upgrade pip pip install -r requirements-lock.txt
If
requirements-lock.txtis unavailable:pip install -r requirements.txt
-
Install and build frontend:
cd frontend npm install npm run build cd ..
-
Install Electron dependencies:
cd electron npm install npm run build cd ..
-
Make launcher executable (should already be executable):
chmod +x launcher
For system-wide access:
ln -s $(pwd)/launcher ~/.local/bin/pumas-libraryThen run from anywhere:
pumas-libraryRun the launcher with different modes:
| Command | Description |
|---|---|
./launcher |
Launch the application (Electron) |
./launcher dev |
Launch with developer tools enabled |
./launcher build |
Rebuild the frontend |
./launcher build-electron |
Rebuild Electron TypeScript |
./launcher package |
Package Electron app for distribution |
./launcher electron-install |
Install Electron dependencies |
./launcher dev-install |
Install dev tooling (requirements-dev.txt) |
./launcher test |
Run pre-commit hooks (formatting, linting, tests, type checking) |
./launcher sbom |
Generate Software Bill of Materials (SBOM) for dependencies |
./launcher help |
Display usage information |