quip-node-manager README

The project's README from github.com/QuipNetwork/quip-node-manager. As one markdown file: README.md.

Quip Node Manager

Desktop application for running and monitoring Quip network nodes. Supports Docker and native execution modes on macOS, Linux, and Windows.

Quick Install

macOS / Linux:

curl -fsSL https://gitlab.com/quip.network/quip-node-manager/-/raw/main/scripts/install.sh | sh

Windows (PowerShell):

irm https://gitlab.com/quip.network/quip-node-manager/-/raw/main/scripts/install.ps1 | iex

Manual Download

Download the latest release from the Releases page.

macOS

Download the .dmg, open it, and drag the app to /Applications.

Linux

The recommended format is AppImage (works on any distro):

chmod +x quip-node-manager-linux-x86_64.AppImage
./quip-node-manager-linux-x86_64.AppImage

A .deb package is also available for Debian/Ubuntu:

sudo dpkg -i quip-node-manager-linux-x86_64.deb

Windows

Download the .exe and run it. Windows SmartScreen may show a warning because the binary is not yet code-signed.

Click More info, then Run anyway.

Features

Development

Prerequisites

Setup

This repo vendors the compose stack via a git submodule. After cloning, fetch the submodule at the commit locked by this repo:

make fetch-submodules

(Equivalent to git submodule update --init --recursive, or clone with git clone --recurse-submodules to do this in one step.)

Commands

bun install          # Install JS dependencies
bun run dev          # Launch development build
bun run build        # Production build for current platform
cd src-tauri
cargo check          # Type-check Rust code
cargo clippy         # Lint

CLI Mode

The app also supports a terminal UI mode:

quip-node-manager --cli

The terminal UI starts and stops the stack, runs the pre-flight checklist, streams logs, and edits the node configuration. Configuration covers the storage directory, ports, run mode, update channel, CPU and GPU settings, and the D-Wave keys. The dashboard, the health panel, TLS settings, and in-app updates stay in the desktop app.

Architecture

Native mode note (macOS): the node's REST API binds to 127.0.0.1:20100. Docker Desktop's vpnkit forwards container traffic from host.docker.internal through to the host's loopback, so the REST port is not exposed to the LAN.

Overriding the bundled stack

Node Manager rewrites ~/quip-data/docker-compose.yml from its embedded copy on every Start and Apply, discarding whatever you edited there. Put changes in ~/quip-data/docker-compose.override.yml instead. Staging never touches that file, and compose merges it over the base.

services:
  quip-validator:
    environment:
      RUST_LOG: debug

Compose loads an override file automatically only when it discovers the compose file itself. Node Manager always passes -f, so it adds the override explicitly when the file exists, after the base file so the override wins.

Two things to watch:

The compose file caps the miner container at 16 GiB, which stops a runaway round from triggering a host-wide out-of-memory kill. On a dedicated miner with more RAM, raise it by setting miner_mem_limit_gb in ~/quip-data/app-settings.json:

{ "miner_mem_limit_gb": 48 }

Set it there rather than in .env, which Node Manager regenerates on every Start. There's no UI control for this yet.

Validator pruning isn't recommended. The validator runs --state-pruning=archive --blocks-pruning=archive, keeping every state trie and block body from genesis. Size the disk for that. Pruning reclaims disk, but it breaks the dashboard: the descriptor worker scans from genesis and fails with State already discarded once it reads past the pruning window. Pruning also likely reduces your point awards on the SNAG platform. Only prune if you accept losing the dashboard.

See AGENTS.md for detailed architecture documentation.

License

AGPL-3.0-or-later

Copyright (c) Postquant Labs

quip-node-manager (QuipNetwork/quip-node-manager)

Searching Database…

Что это такое?Quip Node Manager — настольное приложение с графическим интерфейсом для запуска и мониторинга узлов сети Quip Network, блокчейна, который поддерживает как классический майнинг на CPU, так и квантовый майнинг на процессорах D-Wave (QPU).
Это десктопное приложение или веб-панель?Это нативное десктопное приложение на Tauri v2 с фронтендом на чистом HTML/CSS/JS. Оно также встраивает веб-панель через iframe и поставляется с режимом терминального интерфейса для работы без экрана.
Как это запустить?Используйте скрипт Quick Install на macOS/Linux или команду PowerShell на Windows, либо вручную скачайте .dmg (macOS), AppImage/.deb (Linux) или .exe (Windows) на странице Releases.
Что нужно установить перед запуском узла?Нужен Docker с Compose v2 (отдельный docker-compose v1 не поддерживается). На Windows также требуется WSL, а в режиме Native на macOS дополнительно нужен отдельный исполняемый файл майнера на хост-машине.
О каких проблемах при установке мне стоит знать?Файл .exe для Windows пока не подписан цифровой подписью, поэтому SmartScreen будет выдавать предупреждение — нажмите «Подробнее», затем «Всё равно запустить». Кроме того, прунинг валидатора ломает встроенную панель, так как она сканирует состояние с genesis.
Работает ли он одинаково на всех ОС?Режим Docker используется по умолчанию в Windows и Linux и управляет полным стеком Compose. На macOS приложение может вместо этого запускать майнер как отдельный нативный бинарный файл, тогда как валидатор, панель, postgres и Caddy по-прежнему работают в контейнерах и доступны через host.docker.internal.
Доступен ли API узла из моей сети?В режиме Native на macOS REST API узла слушает только 127.0.0.1:20100, а vpnkit из Docker Desktop лишь перенаправляет трафик с самого хоста к нему, поэтому он не доступен из локальной сети.
Что на самом деле запускает полный стек узла?Через Docker Compose он поднимает вместе майнер, валидатор, панель на базе Postgres и точку входа Caddy, а интерфейс панели встраивается прямо во вкладку Dashboard приложения.
Как настраивается TLS для панели?Вы указываете DNS-имя и email, а приложение подключает поддержку ACME в Caddy и автоматически выпускает сертификат Let's Encrypt или ZeroSSL. TLS необязателен, но после настройки «просто работает».
Для чего нужна функция D-Wave QPU?Она позволяет узлу майнить на квантовом процессоре D-Wave вместо майнинга на CPU или наряду с ним. Ежедневные бюджетные ограничения не дают расходам на QPU превысить лимит. Настраивается через секцию [dwave] и токен D-Wave.
Можно ли запустить без графического интерфейса?Да. Режим терминального интерфейса (CLI) может запускать и останавливать стек, выполнять предстартовый чек-лист, потоково выводить логи и редактировать конфигурацию узла. Панель и обновления внутри приложения остаются доступными только в GUI.
Size
6.2 MB
Stars
5.5K
Updated
CommitOct 15
Age
6mo
Commits · 90 Days