Ligandus is a desktop docking workflow built on Electron and Python. It combines:
- LLM-assisted target/ligand suggestion (local OpenAI-compatible model)
- deterministic RCSB-first receptor fetching with optional AlphaFold fallback
- automated receptor + ligand prep (Meeko, OpenMM, RDKit)
- AutoDock Vina docking pipeline
- in-app 3D pose viewer (3Dmol.js)
- per-user Results Log with save / load / rename / delete
AutoDock Vina is a system binary, not a Python package. On Debian/Ubuntu:
cd install
./RUN_ONCE_LINUX.shOn other systems, install Vina manually (macOS: brew install autodock-vina; Windows or custom path: set VINA_PATH=/full/path/to/vina in .env).
git clone https://github.com/hfsc2004/ligandus.git
cd ligandus
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txtnpm installLIGANDUS_USERNAME=admin
LIGANDUS_UI_PASSWORD=admin
# Local OpenAI-compatible LLM endpoint
LLM_BASE_URL=http://localhost:8080/v1
LLM_MODEL=llama-3.2-3b-instruct-q8_0:latest
LLM_API_KEY=no-key-required
# Optional, for gated/private HF model downloads
HUGGINGFACE_TOKEN=hf_xxx
# Optional GPU pinning for llama.cpp
LLM_CUDA_VISIBLE_DEVICES=1
LLM_SPLIT_MODE=none
LLM_MAIN_GPU=0npm run startSign in (defaults admin / admin), then either:
- Type a disease / protein / ligand into AI Suggestions and click Suggest — clickable verified results auto-populate the Dock fields.
- Or type a UniProt ID (or pick a
.pdb) and a PubChem name (or pick.sdf/.mol) directly into Dock, and click Run Docking.
After each successful run, the Results Log prompts to save (toggleable in Settings). Click any saved entry to reload the receptor + poses + grid box back into the viewer.
Model management (catalog, Hugging Face downloads) lives under the settings gear.
Ligandus is licensed under the Apache License, Version 2.0. See the NOTICE file for attribution requirements.
Copyright 2026 Pseudo Science Fiction.
