Files
dchain/docs
vsecoder 96b347076e feat(desktop): Contacts + Settings→Devices + expanded Profile + QR + keybinds (v2.2.0-rc1)
Completes the desktop feature surface ahead of the v2.2.0 tag. Only
auto-update + packaging remain.

Settings — now two-paned (nav on the left, pages on the right):
  * NodePage — URL ping-on-commit + API token field.
  * IdentityPage — pub key / X25519 pub, Export (safe-save dialog) /
    Import (open dialog + wipe + replace) / Delete identity.
  * DevicesPage — full multi-device UI: list every active device with
    a THIS DEVICE badge; Unlink button on every other row submits
    UNLINK_DEVICE + optimistic local remove; Link new device modal
    takes {code, device key, name}, submits LINK_DEVICE, then ships
    the handshake envelope (master Ed25519 priv encrypted for the
    new X25519) — same protocol as mobile's primary-device modal.
  * AboutPage — version, platform, Gitea links.
  * store.settingsPage discriminated union keeps selection across
    section switches.

Contacts section (now real):
  * ContactsList — alphabetical, filter-as-you-type; each row shows
    avatar letter + name + short address.
  * ContactsDetail — profile card (username/alias/pub) + Open chat /
    View posts / Copy address actions + stats grid
    (Balance, Devices, Encryption, Added) + Identity card with
    DC address, username, published X25519, device_count.
  * store.selectedContact persists across navigation.

Profile section (expanded):
  * ProfileList — big avatar + pub key + contacts count.
  * ProfileDetail — balance hero, quick actions (My posts →
    feed author wall, Manage devices → Settings→Devices, Copy
    address), Identity card, inline Linked devices list with a
    THIS DEVICE badge matching the Settings page.

Receive modal — canvas QR via `qrcode` (new dep, ~5 KB gzipped),
white-on-transparent so it sits inside the same black modal chrome.

Global keybinds (useGlobalKeybinds hook mounted in Shell):
  * Ctrl/Cmd+W — close the current conversation (drops activeChat,
    keeps section). Does NOT close the window.
  * Ctrl/Cmd+K — jump to Contacts.
  * Ctrl/Cmd+, — Settings.
  Each guards against being in a text field so typing `k,` in a
  composer / search doesn't hijack.

docs/ROADMAP.md — rc1 row flipped to done; v2.2.0 narrows to
auto-update + packaging + optional attachments in Compose.
2026-04-22 18:39:39 +03:00
..
2026-04-17 14:16:44 +03:00

DChain documentation

Справочник по блокчейн-ноде DChain. Читается в любом порядке, но если в первый раз — идите по разделам сверху вниз.

Оглавление

Документ О чём
quickstart.md Поднять ноду локально за 5 минут
architecture.md 4 слоя стека: network / chain / transport / app
node/README.md Запуск ноды (docker, native, deployment)
update-system.md Версионирование, /api/update-check, auto-update от Gitea
api/README.md REST + WebSocket API endpoints
cli/README.md CLI client — команды, флаги, примеры
contracts/README.md Системные контракты (native + WASM)
development/README.md SDK для написания своих контрактов (TinyGo)
node/governance.md On-chain governance, голосование параметров
node/multi-server.md Multi-validator federation deploy

Внешние ссылки из репо

Соглашения

  • Единицы: микро-токены (µT). 1 T = 1,000,000 µT. MinFee = 1000 µT = 0.001 T.
  • Pubkey: 32-байтный Ed25519 (hex, 64 символа).
  • Address: DC + первые 24 hex-символа SHA-256(pubkey).
  • ChainID: dchain- + первые 12 hex-символов SHA-256 genesis-блока.
  • Времена: RFC 3339 (UTC) везде, кроме internal-счётчиков в Prometheus (unix seconds).