curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | bashDAQweb is a local web interface for computing and inspecting DAQ scores for cryo-EM model validation. It runs a React UI in your browser and a local Python backend for DAQ computation, including ONNX Runtime inference and platform fallbacks.
- Computes residue-wise DAQ scores from a model plus cryo-EM map.
- Loads PDB or mmCIF atomic models.
- Loads MRC or MAP density volumes.
- Reuses an existing DAQ
.npygrid when you already have one. - Writes scored PDB outputs for amino-acid, C-alpha, secondary-structure, and combined DAQ metrics.
- Shows interactive model, map, chart, sequence, and run-history views in the browser.
- Stores run outputs locally under your user account.
DAQweb is web UI based. The computation still runs locally on your machine; no input models, maps, or score files are uploaded to an external service by the default installer.
Run:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | bashThe installer creates:
~/.daqweb/
app/
bin/daqweb
logs/
node/ # only when Node.js 18+ is not already installed
runs/
venv/
It downloads the repository, builds the React app, creates an isolated Python environment, installs DAQweb's Python dependencies, and installs the best available ONNX backend for your platform.
~/.daqweb/bin/daqweb startThen open:
http://127.0.0.1:5173/
daqweb start prints the local URL as a clickable terminal link in terminals
that support hyperlinks.
If ~/.local/bin is on your PATH, the installer also links:
daqweb startDuring interactive installs, DAQweb asks whether to add the daqweb command to
your PATH. For non-interactive installs, set DAQWEB_INSTALL_USER_BIN=1.
DAQweb accepts:
- atomic model:
.pdb,.cif,.mmcif - density map:
.mrc,.map - optional existing DAQ grid:
.npy
For a full DAQ computation, provide a model and either a density map or an existing DAQ grid. When a map is provided, DAQweb computes a grid first, then assigns residue-level scores to the model.
The installer chooses backend packages by operating system:
- Linux x86_64:
onnxruntime-gpuwith CPU fallback - macOS Apple Silicon:
onnxruntimeplusmlxwhen available - macOS Intel:
onnxruntimeCPU - Other Linux architectures:
onnxruntimeCPU - Windows shells:
onnxruntime-directmlwith CPU fallback
Inside the UI, the backend selector defaults to auto. Use cpu if you want
the most predictable fallback behavior, or a GPU backend when your platform and
drivers support it.
Set environment variables before bash to customize installation:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | \
DAQWEB_HOME="$HOME/.daqweb" DAQWEB_REF=main bashCommon options:
DAQWEB_HOME: install location, default~/.daqwebDAQWEB_REPO: GitHub repository, defaultkiharalab/DAQwebDAQWEB_REF: branch or tag, defaultmainDAQWEB_CPU_ONLY=1: install the CPU ONNX backend even on GPU-capable LinuxDAQWEB_FORCE_BUILD=1: rebuild the frontend even if a prebuiltdist/existsDAQWEB_INSTALL_USER_BIN=1: install thedaqwebcommand without promptingDAQWEB_SKIP_USER_BIN=1: do not create the~/.local/bin/daqwebsymlink
DAQweb keeps installation files and results local:
- app source and built UI:
~/.daqweb/app - Python virtual environment:
~/.daqweb/venv - completed runs:
~/.daqweb/runs - logs:
~/.daqweb/logs
Each run stores metadata, generated DAQ grid files, and scored PDB outputs. You
can remove old runs by deleting directories under ~/.daqweb/runs.
Rerun the installer:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | bashTo install a specific tag or branch:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | \
DAQWEB_REF=<tag-or-branch> bashStop any running DAQweb server, then remove the install directory:
rm -rf ~/.daqweb
rm -f ~/.local/bin/daqwebIf the UI does not open, confirm the server is running:
~/.daqweb/bin/daqweb start --port 5173If Python dependencies fail on Linux GPU installs, retry with the CPU backend:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | \
DAQWEB_CPU_ONLY=1 bashIf the command daqweb is not found, either run ~/.daqweb/bin/daqweb start
directly or add this to your shell profile:
export PATH="$HOME/.local/bin:$PATH"Install frontend dependencies:
npm ciRun the development server:
npm run dev -- --port 5173Run a production-style local server:
npm run build
npm run serve:local -- --port 5173Build release artifacts:
npm run package:releaseDAQweb's one-command installer is web UI only. The browser extension and native messaging host are optional integration pieces for workflows that want to launch DAQweb from another web application.
The native host can be registered for the published Chrome extension with:
curl -fsSL https://raw.githubusercontent.com/kiharalab/DAQweb/main/install.sh | \
DAQWEB_INSTALL_NATIVE_HOST=1 bashIf you use DAQweb or DAQ scores in published work, cite the DAQ method:
Terashi, G., Wang, X., Maddhuri Venkata Subramaniya, S. R., Tesmer, J. J., & Kihara, D. (2022). Residue-wise local quality estimation for protein models from cryo-EM maps. Nature Methods, 19(9), 1116-1125.
See the license files in this repository for the DAQweb code and bundled DAQ plugin components.