A desktop drive on top of Swarm decentralised storage.
Nook bundles a Bee node and a clean UI into a single desktop app. Store files, encrypt and share them, publish websites — all on decentralized storage. No accounts, no servers.
- Store files — upload any file or folder to Swarm, organized into drives with folders. Rename drives, see honest usage, extend before expiry
- Encrypt files — create encrypted drives using Swarm's ACT (chunk-level encryption). Only people you grant access to can decrypt and download
- Share encrypted drives — grant access to specific contacts, deliver via a message or share link, and recipients get a live-syncing view of your files. Revoke anytime; re-publish re-secures existing files
- Message other Nook users — end-to-end encrypted messaging over Swarm, no servers. On-chain notification pings reach people even before they've added you back
- Contacts & identity — publish a wallet-derived Nook address so others can find you
- Publish websites — upload a website (HTML/CSS/JS) to Swarm with a permanent address that stays the same when you publish new versions
- Access anything on Swarm — retrieve any Swarm hash and open it in your browser
- Connect to ENS — link your Swarm-hosted website to an ENS domain (e.g.
yourname.eth) so anyone can access it via a gateway or ENS-aware browser - Manage your wallet — view xDAI/xBZZ balances, swap between tokens, redeem gift codes, top up from any chain via the multichain widget
- Extend storage — drives have a TTL (time to live). Extend them to keep your data alive longer
Nook manages a Bee node automatically. When you start Nook:
- The app downloads and starts a Bee binary on
localhost:1633 - New installs start in ultra-light mode — no funds needed, the UI works immediately
- When you fund your wallet with xDAI, Nook auto-switches to light mode and you can start uploading
- Files are stored on Swarm — retrievable via any public gateway or your local node
Note: Nook always starts its own Bee node. If you already run a Bee node on port 1633, stop it before launching Nook.
Download the latest build from the releases page:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | Nook-*-arm64.dmg |
| macOS (Intel) | Nook-*-x64.dmg |
| Linux | nook_*_amd64.deb / nook-*.x86_64.rpm |
| Windows | Nook-*-Setup.exe |
macOS note: the app is not yet notarized. After downloading, run xattr -cr ~/Downloads/Nook-*-arm64.dmg, install, then xattr -cr /Applications/Nook.app, and right-click → Open on first launch.
npm install
cd ui && npm install && cd ..
npm start # starts Electron backend + Vite dev serverThe Electron backend is in src/. The React UI lives in ui/ (Vite + React 19 + Tailwind + TanStack Query + Zustand).
npm run build # production build (tsc + vite + copies ui into dist/)
npm run make # create platform installer (DMG on macOS)
npm run lint # eslint fix
npm run test:unit # jest unit tests
npm run purge:data # wipe app data (useful during dev)
npm run purge:logs # wipe log folder| Platform | Data | Logs |
|---|---|---|
| macOS | ~/Library/Application Support/Nook |
~/Library/Logs/Nook/ |
| Linux | ~/.local/share/Nook |
~/.local/state/Nook/ |
| Windows | %LOCALAPPDATA%\Nook\Data |
%LOCALAPPDATA%\Nook\Log |
Based on swarm-desktop by Swarm Association.