P2P encrypted messenger with built-in wallet, games, live DJ, Spaces, and name marketplace. End-to-end encrypted, peer-to-peer, privacy-first.
E2E Encrypted
Decentralized Relay Network
Proof-of-Uptime Identity
Multi-Chain Wallet
Real-Money Games
Live DJ
What is Backspace.me?
Backspace.me is a peer-to-peer encrypted messenger built on a distributed WebSocket relay network. Every message is end-to-end encrypted before it leaves your device, and your identity is secured by Ed25519 cryptographic key pairs. There is no account database to hack and no company reading your conversations.
The network runs on a growing number of globally distributed relay nodes that sync messages, profiles, and room state between each other. Clients connect via WebSocket to any available node. Users earn unique nicknames by contributing uptime to the network through Proof-of-Uptime minting.
The platform features a self-custodial multi-chain crypto wallet (SOL, TRX, USDT), real-money Snake tournaments, user-created Spaces (virtual servers), and live DJ where any user can broadcast music in any room with a full dual-deck mixing engine.
Explore the Docs
Quick Start
Get up and running in under 5 minutes. Install, connect, mint a name, and start chatting.
Architecture
Understand the relay network architecture, peer sync, binary protocol, and how messages flow.
Spaces
Create your own virtual servers with custom rooms, admin system, and member management.
Wallet
Self-custodial multi-chain wallet with SOL, TRX, USDT support, tipping, and game payments.
Games
Snake tournaments with real crypto prizes, plus Blocks, Pixel Bird, and more.
Commands Reference
Complete list of all slash commands with usage examples and descriptions.
Download the latest Backspace.me 0.5.0.exe portable build or the Backspace.me Setup 0.5.0.exe installer.
Double-click to run. The app connects to the relay network automatically.
Tip
The portable build requires no installation and leaves no registry entries. You can run it from a USB drive or any folder on your system.
Option 2: Build from Source
If you prefer to build from source or want to run on macOS/Linux:
System Requirements
Node.js 18.0 or higher
npm 9.0 or higher (bundled with Node.js)
Operating System: Windows 10/11, macOS 12+, or Linux (Ubuntu 20.04+)
Network: Active internet connection (WebSocket-capable)
1. Clone and Install
bash
git clone https://github.com/nickshouse/Backspace.me.git
cd Backspace.me
npm install
2. Launch the Client
bash
npm start
The Electron app will open and connect to the relay network automatically. You can start chatting right away as an anonymous user, or mint a nickname to claim your identity.
Note
You do not need to run your own relay node. The app connects to the existing relay network automatically.
Download the portable .exe from the Releases page (Windows) or build from source with npm start. The app connects to the relay network automatically when launched. You will see the connection status in the bottom-left corner of the app.
Step 2: Account Selector
On launch you see the Account Selector screen. You have several options:
Choose an existing account — If you have previously minted names, they appear with profile pictures for one-click login.
Create new — Start minting a new identity via Proof-of-Uptime.
Login with private key — Restore an account using your private key hex string.
Login with seed words — Restore using your 24-word recovery phrase.
Incognito mode — Browse anonymously as Anon##### with limited features.
Step 3: Mint a Name
Go to Settings and start minting. Enter the name you want to claim and click Start Minting. Minting uses Proof-of-Uptime — your app needs to stay open and connected. Longer names mint faster; shorter names are scarcer and take longer.
Tip
Start with a longer name (13+ characters) for your first minting attempt. These mint in about an hour and let you start using all features right away. You can mint a shorter, premium name later.
Step 4: Join Rooms
Use the /join command or click the + button next to the room list to join rooms. If a room does not exist, it will be created and you become the room admin.
command
/join general
Step 5: Explore Features
Once you have a minted name, the full feature set unlocks:
Friends & DMs — Add friends, send encrypted direct messages, make voice calls.
Spaces — Create or join virtual servers with their own rooms and admin hierarchy.
Wallet — Send and receive SOL, TRX, or USDT. Tip other users in chat.
Games — Play Snake tournaments for real crypto prizes, or practice for free.
DJ — Start a DJ session in any room and broadcast live music with dual-deck mixing, EQ, effects, and mic support.
Marketplace — Buy and sell minted names.
Important
Your recovery phrase is the master key to your identity. Store it offline in a secure location. Anyone with your recovery phrase can take over your nickname.
How the Backspace.me distributed relay network operates.
Network Overview
Backspace.me uses a distributed WebSocket relay architecture. The network launches with seed relay nodes and grows as community members run their own nodes. Each client connects to two nodes simultaneously — a primary (active) and a standby (hot backup) — via WebSocket (ws://node:4200). Nodes sync with each other via an internal peer protocol using msgpackr binary serialization (40-60% smaller than JSON).
Client — Electron 33.4 desktop app (Windows) with pure JS frontend (~19,000 lines in a single app.js).
Server — Distributed Node.js relay nodes connected via WebSocket mesh.
Encryption — AES-256-GCM end-to-end for all room messages. Keys derived from room name + password via HKDF.
Identity — Ed25519 keypairs (one per minted name). Messages are signed to prove authenticity.
Protocol — Custom binary protocol via msgpackr with zlib compression for persistence.
Network Topology
Each client maintains two connections — a primary and a hot standby on different nodes. Messages flow through the primary. Relay nodes communicate with each other to keep the network in sync. When a client sends a message, it goes to the primary node, which broadcasts it to local clients and syncs it to peer nodes. If the primary fails, the standby takes over instantly.
Key principles of the topology:
No single point of failure — Clients maintain dual connections (primary + standby). If the primary node goes down, the standby takes over instantly with zero downtime.
Node sync — Nodes perform snapshot syncs and room occupancy syncs to keep state consistent.
Seed node discovery — Nodes discover each other via the seed node at 64.95.13.233:4200.
Profiles synced across nodes — User profiles are stored per-node and synced across the network via the peer protocol.
Relay Nodes
The network launches with seed relay nodes and grows as community members run their own. Current seed nodes:
Node
Address
Role
Node 1
64.95.13.233:4200
Seed node
Node 2
216.245.184.140:4200
Relay
Node 3
64.190.113.230:4200
Relay
Node 4
65.38.121.126:4200
Relay
Node 5
64.111.92.44:4200
Relay
Node 6
195.85.115.171:4200
Relay
Client Connection
When a client starts, it connects to an available relay node from a known list of node addresses:
The client has a built-in list of relay node addresses (seed nodes). As the network grows, community-run nodes are discovered automatically via peer exchange.
It connects to two nodes simultaneously — a primary (active) and a standby (hot backup) on a different node.
The primary handles all messaging. The standby stays connected and authenticated but silent (no room joins).
If the primary drops, the standby is promoted instantly (0ms failover) — rooms are re-joined, messages continue, and the user sees no disconnection.
A new standby connection is then established to another node automatically.
Dual-Node Architecture
Both connections are health-checked every 15 seconds. Node latency is tracked to ensure the fastest node is always primary. If the standby dies, it silently reconnects to another node — no user impact.
Message Flow
A message travels through the network in the following steps:
Compose — The sender types a message in a room or DM.
Encrypt — The message is encrypted with AES-256-GCM using the room key (derived from room name + password via HKDF).
Sign — The encrypted message is signed with the sender's Ed25519 private key to prove authenticity.
Send — The message is sent over the WebSocket connection to the connected relay node.
Broadcast — The relay node broadcasts the message to all clients in that room and syncs it to peer nodes.
Verify & Decrypt — Each receiving client verifies the Ed25519 signature and decrypts the AES-256-GCM ciphertext.
Display — The verified, decrypted message is displayed in the chat window.
Data Storage
Message data on relay nodes is handled as follows:
Gzip'd to disk — Messages are compressed with gzip and stored on the relay node's disk.
7-day TTL — Room messages expire and are automatically purged after 7 days.
Encrypted DMs — Direct messages are stored as AES-256-GCM ciphertext. The relay node cannot read them.
Spaces — Gzip-compressed per-space file in data/spaces/.
Profiles — Stored per-public-key with all settings, avatar, and wallet addresses.
Game logs — Per-round JSON logs in data/snake-games/.
Backspace — Room admins can destroy a room and all its message history using the Backspace feature.
Earn your unique nickname by contributing to the network through Proof-of-Uptime.
How Identity Works
Backspace.me uses Ed25519 elliptic-curve cryptography for identity. Each minted name generates a unique keypair:
Public Key — Your unique address on the network. Other users can verify your messages came from you by checking your public key signature.
Private Key — Your secret proof of identity, encrypted with your password (AES-256). It is used to sign messages and decrypt DMs. The private key never leaves your device.
Your public key is deterministically linked to your nickname. Once you mint a name, it is cryptographically bound to your key pair and cannot be claimed by anyone else unless they possess your private key.
Proof-of-Uptime Minting
Unlike traditional cryptocurrency mining that wastes energy on arbitrary hash puzzles, Backspace.me uses Proof-of-Uptime to assign nicknames. The concept is straightforward: the longer your app stays online and connected to the network, the more "work" you accumulate toward earning a nickname.
Minting works as follows:
Go to Settings and enter the desired nickname.
Click Start Minting. The minter calculates the difficulty based on the name length.
Your app begins accumulating uptime credits while connected to the relay network.
Once enough credits are earned, the name is cryptographically registered to your key pair.
The network recognizes your ownership through signed attestations synced across nodes.
Proof-of-Uptime Verification
The Proof-of-Uptime system uses a canary-based verification mechanism to ensure nodes are genuinely online and contributing to the network:
Canary challenges — The server sends verification challenges to the client every 5 minutes. The client must respond to prove the relay is alive and operational.
Witness proofs — Each successful canary verification earns 1 witness proof, representing 5 minutes of uptime credit. Witnesses are cryptographically signed by the verifying node.
Multiple unique nodes — Shorter names require witnesses from multiple unique relay nodes (the minNodes requirement). You must be connected to enough distinct relays to satisfy this threshold.
Progress calculation — Your minting progress is calculated as min(hours%, nodes%) × 100. Both the time requirement and the node requirement must be met for completion.
Watchdog — A built-in watchdog monitors your canary verification status. If verification stalls (e.g., due to a dropped connection), it auto-reconnects to keep your minting progress moving.
Witness persistence — Accumulated witness proofs survive reconnections. If your connection drops and recovers, previously earned witnesses are preserved and counted toward your total.
Difficulty Tiers
Name scarcity is enforced through a difficulty curve. Shorter names take longer to mint and require witnesses from more unique nodes.
Name Length
Tier
Time Required
Min Nodes
Example
13-16 characters
Easy
1 hour
1
CryptoNinja2025
9-12 characters
Standard
8 hours
1
CryptoNinja
6-8 characters
Medium
24 hours (1 day)
2
Phantom
5 characters
Hard
72 hours (3 days)
2
Satos
4 characters
Very Hard
168 hours (7 days)
2
Nova
3 characters
Epic
360 hours (15 days)
3
Ace
1-2 characters
Legendary
720 hours (30 days)
3
XO
Note
The difficulty also factors in character composition. Names with only lowercase letters are slightly easier than those with mixed case, numbers, or special characters.
24-Word Recovery Phrase
When you create your account, a 24-word mnemonic phrase is generated from your private key (custom word list, not BIP39). This phrase is the human-readable backup of your entire identity. With these 24 words, you can regenerate your exact key pair and recover your minted nickname on any device.
Backing Up Your Account
Go to Settings → Account → Backup to view and copy your recovery phrase. Best practices:
Write the 24 words on paper and store it in a safe place.
Never store your recovery phrase in a cloud service, screenshot, or plain text file.
Never share your recovery phrase with anyone. Backspace.me support will never ask for it.
Restoring Your Account
To restore your identity on a new device or after reinstalling:
Launch Backspace.me and select Login with seed words on the account selector screen.
Enter your 24-word recovery phrase exactly as it was given.
The client regenerates your key pair and your minted nickname is restored.
Login with Private Key
You can also log in from any device using your private key hex string. This allows you to access your identity without the recovery phrase if you have your key exported.
Account Switcher
The account selector on startup lets you manage multiple identities. It shows all accounts on device with profile pictures for one-click login. You can switch between different minted names without logging out and back in. Multiple accounts per device are supported.
Anonymous Browsing
Users without an account are assigned temporary Anon#### nicknames. Anonymous users receive an auto-generated Ed25519 key pair (stored locally), allowing them to browse and chat in public rooms. However, they cannot:
Send or receive direct messages
Set operator/admin permissions
Access friend list features
Anonymous users can browse the marketplace and buy or receive names. When an anonymous user acquires a name, they are prompted to set a password to secure their identity and create a full account.
Privacy-first architecture ensures that your private messages remain private.
Security Overview
Backspace.me is designed with privacy at its core. All room messages are encrypted with AES-256-GCM, DMs use unique per-session encryption keys, and your private key never leaves your device. Relay nodes store encrypted message data but cannot read the contents.
Room messages are encrypted with AES-256-GCM. Keys derived from room name + password via HKDF.
DMs are encrypted with a unique per-session key derived from both parties' Ed25519 keypairs.
Ed25519 signatures verify the authenticity of every message.
Private keys are encrypted locally with the user's password (AES-256).
Your private key never leaves the client.
AES-256-GCM Encryption
All messages in Backspace.me are encrypted using AES-256-GCM (Advanced Encryption Standard with 256-bit keys in Galois/Counter Mode). AES-256-GCM provides both confidentiality and integrity:
Confidentiality — The 256-bit key space makes brute-force attacks computationally infeasible.
Integrity — GCM mode produces an authentication tag that detects any tampering with the ciphertext.
Performance — AES-GCM is hardware-accelerated on modern CPUs, making encryption and decryption nearly instantaneous.
Key Derivation
Room Keys
Room encryption keys are derived from the room name and password using HKDF (HMAC-based Key Derivation Function). Only clients who know the room name (and password, if set) can derive the key and decrypt messages.
DM Keys
Direct message encryption uses a unique session key derived from both participants' Ed25519 key pairs. This ensures that DM conversations are encrypted with a key known only to the two parties involved. The relay node stores and forwards the ciphertext but cannot decrypt it.
Ed25519 Signatures
Every message is signed with the sender's Ed25519 private key. Recipients verify the signature using the sender's public key. This provides:
Authentication — Proof that the message came from the claimed sender.
Non-repudiation — The sender cannot deny having sent a message they signed.
Integrity — Any modification to the message after signing invalidates the signature.
Anti-Abuse
Proof-of-Uptime prevents mass account creation.
Friend request required before DM (anti-spam).
Rate limiting on message sends.
Block system — per-user blocking.
Room admin tools — kick, ban, lock, and private mode.
Wallet Security
Self-custodial: keys generated and stored locally.
Private keys encrypted at rest.
No server-side key storage.
Transaction signing happens client-side only.
Server-Side Storage
Relay nodes store message data with the following security properties:
Messages are gzip-compressed and written to disk on relay nodes.
All message content is stored as AES-256-GCM ciphertext — no plaintext messages are stored on servers.
Messages have a 7-day TTL and are automatically purged after expiration.
The Backspace feature lets room admins destroy a room and all its message history.
Your private key is never transmitted to or stored on any server.
Security Best Practice
Always verify the public key of contacts you communicate with through an out-of-band channel (in person, phone call, etc.) to prevent man-in-the-middle attacks during initial key exchange.
Create, join, and manage E2E encrypted rooms for group conversations.
End-to-End Encryption
All room messages are encrypted with AES-256-GCM. The room key is derived from roomName + password using HKDF. Only clients who know the room name (and password, if locked) can decrypt messages. Relay nodes store and forward encrypted ciphertext without being able to read it.
Joining and Creating Rooms
To join a room, use the /join command followed by the room name, or click the + button in the room sidebar. If the room does not exist, it is created on the spot and you become the room admin.
command
/join mycoolroom
To leave a room, use /leave or click the X on the room tab. You can be in multiple rooms at once.
Browse Rooms
Use the +Browse button in the sidebar to discover public rooms currently active on the network. The room browser shows room names, user counts, and topics.
File sharing — Allow/block file sharing in the room.
Slow mode — Set a cooldown between messages.
Max users — Set a user limit for the room.
Message TTL — Auto-delete messages after X hours.
Welcome message — Custom greeting for new joiners.
Anonymous users — Allow or block anonymous users.
Announcements — Persistent banners visible to all members (admin only).
Room Features
@Mentions
Type @username in your message to mention a user. The mentioned user will receive a visual notification highlight in their client, even if they are in a different room tab.
Reactions
React to messages with emoji. Click the reaction icon on any message to add your reaction.
Voice Messages
Record and send audio clips directly in chat. Voice messages are encrypted the same as text messages.
File Sharing
Share files with room members via drag-and-drop, clipboard paste, or the attachment button. Images, videos, audio, and documents are supported with inline previews.
Editing & Deleting Messages
You can edit or delete your own messages after sending them. Right-click on your message to see the edit and delete options. Edits show an "(edited)" indicator.
The Backspace Feature
Room admins have access to the Backspace feature, which nukes the entire room message history for all participants. This sends a command to all connected peers to clear their local copy of the room's messages. Once triggered, the history is gone.
User-created virtual servers with their own rooms, admin systems, and member lists.
What Are Spaces?
Spaces are user-created virtual servers within Backspace.me. Each Space has its own rooms, admin system, and member list, running on the existing Backspace network infrastructure. Your global identity, friends, wallet, and DMs work across all Spaces.
Creating a Space
Open the Space Browser from the sidebar.
Click + Create Space.
Enter a name, description, select a category (Gaming, Crypto, Music, Tech, etc.), and choose public or private.
Your Space is created with a default #general room.
Joining a Space
Space Browser — Browse public Spaces, filter by category, search by name or description, and click Join.
Invite Link — Each Space has an invite URL (backspace.me/<slug>) that anyone can use to join directly.
Space Features
Rooms — Create rooms within your Space (Browse / Join / Create). No room limit.
Categories — Spaces are organized by category for easy discovery in the Space Browser.
Admin System — Owner > Admin > Mod > Member role hierarchy.
Member Management — Invite, kick, ban, promote/demote members. No member limit.
Public/Private — Public Spaces are discoverable in the Space Browser. Private Spaces require an invitation.
Social Links — Add links to your community's social accounts (displayed on your Space page).
Welcome Message — Set a custom welcome message and content for your Space home page.
Global Identity — Your Backspace name, friends, wallet, and DMs work across ALL Spaces.
Space Switching
Space Browser — Switch between your Spaces or browse new ones to join.
Sidebar — Shows Space rooms when a Space is active; hides global rooms.
Friends & DMs — Always visible regardless of active Space (global social layer).
Space Roles
Role
Permissions
Owner
Full control: settings, rooms, roles, delete Space
Admin
Create rooms, manage members, change settings
Mod
Kick/mute members
Member
Chat in Space rooms
Spaces persist across all relay nodes as gzip-compressed data files, synced via the peer protocol.
Note
Spaces share the same encryption and security model as regular rooms. All messages within Space rooms are encrypted with AES-256-GCM.
Private, end-to-end encrypted 1:1 conversations with voice call support.
Overview
Direct messages (DMs) allow two users to have a private, end-to-end encrypted conversation. DMs use a unique encryption key per session, and the relay node can never read the contents. A friend request is required before DM (anti-spam).
How It Works
Click a user in the room user list or friends list.
Send a DM request (or accept incoming).
Once established, messages are encrypted between the two parties.
DM history persists across reconnections.
DM Features
End-to-end encrypted with a unique DM key per session.
Voice messages supported.
File sharing supported.
Online/offline status indicators.
Voice calls via WebRTC peer-to-peer.
Friend System
The friend system lets you manage a list of contacts for quick access to DMs.
Command
Description
/friend <nick>
Send a friend request
/unfriend <nick>
Remove a friend
/block <nick>
Block a user
/unblock <nick>
Unblock a user
DM Encryption
DM encryption uses AES-256-GCM with a derived key computed from both participants' Ed25519 key pairs. This means:
Every DM conversation has a unique encryption key.
The key is derived on both sides independently — it is never sent over the network.
Relay nodes store and forward encrypted ciphertext but cannot read the contents.
If either party's key pair changes, the session key is renegotiated.
Voice Calls
Backspace.me supports peer-to-peer voice calls via WebRTC. Calls are established directly between two clients without going through the relay nodes, providing low-latency, private audio communication.
Offline Message Queue
If the recipient is offline, DM messages are queued on the relay node and delivered when they come back online. Messages in the queue are encrypted and cannot be read by the relay node.
Self-custodial multi-chain crypto wallet built into the app.
Overview
Backspace.me includes a self-custodial multi-chain wallet built directly into the app. No external wallet or browser extension is needed — you own your keys. The wallet is used for tipping other users, paying game entry fees, receiving prizes, and sending/receiving crypto.
Supported Chains
Chain
Token
Features
Solana
SOL
Send, receive, game payments, tipping
TRON
TRX
Send, receive, tipping
Solana SPL
USDT, USDC
Token transfers
Wallet Features
Generate — Creates wallet on first use (or import existing).
Send/Receive — Full transaction support with address validation.
Tipping — Tip any user in any room via /tip @user amount coin.
QR Code — Receive screen shows QR for your address.
Balance — Real-time SOL/TRX/USDT balance display.
Tipping
Tip any user in any room with a single command:
command
/tip @alice 0.5 SOL
Transaction History
The wallet shows all transfers with context labels so you always know where your funds went:
Tipped / Received from @user — Tips sent and received.
A 3% fee is applied on wallet sends and tips. Game entry fees and payouts also carry the 3% house fee.
Important
The wallet is self-custodial. Your keys are generated and stored locally on your device. There is no server-side key storage and no way to recover funds if you lose your device without a backup.
Trade minted nicknames with other users on the marketplace.
Overview
The Marketplace is where minted nicknames become tradable assets. Because shorter names require significantly more minting effort, they carry real value within the Backspace.me ecosystem. Users can list names for sale, make offers, and transfer ownership.
Marketplace Features
Buy/sell minted names — List your names for sale with asking prices.
Make offers — Submit offers on listed names.
Transfer names — Transfer name ownership between users.
Price tiers — Based on name length and rarity.
Browsing Listings
Navigate to the Marketplace tab to browse available names. Listings show the nickname being offered, the seller, and the asking price or trade conditions.
Listing a Name for Sale
To list one of your minted names, go to the Marketplace and create a listing. Set your price or conditions, and the name becomes available for other users to purchase.
Buying a Name
Browse the marketplace listings, find a name you want, and purchase it. When a trade completes, the name ownership is cryptographically transferred to the buyer's key pair and the change is synced across all relay nodes.
Name Validation & Ownership
The network validates name ownership through Ed25519 signatures. When you use a nickname, your messages include a signature that relay nodes can verify against the registered owner's public key. Name ownership is tracked across all relay nodes.
Built-in games with real-money Snake tournaments and crypto prizes.
Overview
Backspace.me includes a collection of built-in games accessible from the Games tab. The flagship game is Snake Tournament with real crypto prizes. Scores are tracked per user, and a gaming badge shows in rooms and friend lists when you are playing.
Snake Tournament (Real Money)
Competitive multiplayer snake with crypto prizes, powered by the built-in wallet.
How It Works
Go to Games tab > Snake > Real Money.
Start New Round — Opens a 60-second countdown lobby.
Live DJ broadcasting by users — dual-deck mixing, effects, and real-time listening.
Overview
Any user can start a DJ session in a room and broadcast live music to everyone listening. The DJ interface provides a full dual-deck mixing engine with professional controls, letting users mix tracks, apply effects, and broadcast with a live microphone.
Starting a DJ Session
Use the /dj command to start a DJ session in any room. Once active, listeners in the room hear your broadcast in real-time.
command
/dj
Mixing Engine
Dual-Deck Layout — Two independent decks (Deck A and Deck B) for seamless track transitions.
3-Band EQ — Per-deck equalizer with low, mid, and high frequency controls.
Crossfader — Smooth blending between the two decks.
BPM Sync — Automatic tempo matching between decks for beat-matched transitions.
Hot Cues — Set and trigger cue points for instant jumps within a track.
Beat Loops — Create beat-synced loops on the fly.
Queue Management — Load and organize upcoming tracks.
Effects & FX Pads
FX Pads — Trigger instant sound effects during your set:
Airhorn, Scratch, Siren, Riser
And more sound effects for live performance
Audio Effects — Apply real-time effects to decks for creative mixing.
Live Mic Broadcasting
DJs can broadcast their voice alongside the music using push-to-talk microphone support. This lets DJs talk over tracks, make announcements, or interact with listeners in real-time.
Listening Experience
Real-Time Broadcast — Listeners hear the DJ mix as it happens, with minimal latency.
Now Playing — Live display of the current track information.
Mini Player — Continues playing when you switch to other rooms or tabs.
AI-assisted bot development environment — create, configure, and deploy automated bots on the Backspace.me network with ready-to-use templates.
Overview
The Backspace Bot Builder is a dedicated desktop app for creating bots that run on the Backspace.me relay network. Describe what you want in natural language and the AI backend generates production-ready bot code. Or start from one of the built-in templates and customize from there.
Bots connect to the same relay network as regular users — they can join rooms, send messages, respond to commands, listen for events, and interact with Spaces. Each bot runs as an independent Node.js process with its own identity and encrypted connection.
Templates
Every template includes a complete bot.js implementation and a bot-config.json configuration file. Pick one as a starting point and customize, or start from blank.
Template
Description
Key Features
Base
Blank starter
Minimal framework with event handlers only
Chatbot
AI-powered conversations
Supports Anthropic, OpenAI, Ollama — conversation history, persona control
How the distributed relay network operates and stays in sync.
Relay Nodes
The Backspace.me network launches with seed relay nodes and is designed to grow as community members run their own. Each node accepts WebSocket connections from clients on port 4200 and syncs state with peer nodes. Clients connect to two nodes simultaneously (primary + hot standby) for instant failover. Nodes handle message routing, profile sync, and room state across the network.
Peer Sync
Seed node discovery — Nodes discover each other via the seed node.
Room occupancy sync — Room membership data is shared so users on different nodes can see who is in each room.
Profile sync — User profiles are synced via the peer relay protocol.
Deduplication — Prevents broadcast storms from message relay loops.
Event dedup — 99% reduction in peer relay events through leader election and dedup checks.
Auto-Discovery & Dual-Node Connection
Clients maintain two simultaneous connections to different relay nodes:
Primary — Active connection that handles all messaging, room joins, and interactions.
Standby — Hot backup on a different node. Connected and authenticated, but silent.
If the primary node goes down, the standby is promoted instantly — no reconnection delay, no lost messages. A new standby is then established to maintain redundancy. Both connections are health-checked every 15 seconds with latency tracking for smart node selection.
The network is designed to grow. Users who run their own relay nodes expand the mesh — more nodes means better resilience, lower latency, and wider geographic coverage. New nodes are discovered automatically via peer exchange.
Persistence
Rooms — Gzip-compressed on disk, 7-day message TTL.
Spaces — Gzip-compressed per-space file in data/spaces/.
Profiles — Stored per-public-key with all settings, avatar, wallet addresses.
Game Logs — Per-round JSON logs in data/snake-games/.
Network Dashboard
The client displays a real-time Network Dashboard showing the health and activity of the relay network:
Nodes Online — Number of relay nodes currently active
Users Online — Total users connected across all nodes
Rooms Active — Number of rooms with active participants
Minters Active — Number of users currently minting nicknames
Messages Sent — Total messages sent across the network
DMs Active — Number of active direct message conversations
Files Shared — Total files shared across rooms and DMs
Complete list of all slash commands available in Backspace.me.
Chat Commands
Command
Description
/join <room>
Join or create a room
/leave
Leave current room
/nick <name>
Change display name (must own the name)
/me <action>
Send an action message
/clear
Clear local chat history
/away <message>
Set away status
/back
Return from away
Room Admin Commands
Command
Role Required
Description
/topic <text>
Admin
Set room topic
/lock <password>
Admin
Lock room with password
/unlock
Admin
Remove room password
/private
Admin
Toggle room visibility
/kick <nick>
Admin, Op
Kick user from room
/op <nick>
Admin
Give operator status
/deop <nick>
Admin
Remove operator status
/announce <text>
Admin
Set room announcement
Social Commands
Command
Description
/dm <nick>
Send direct message
/friend <nick>
Send friend request
/unfriend <nick>
Remove friend
/block <nick>
Block user
/unblock <nick>
Unblock user
/tip <nick> <amount> <coin>
Tip a user (e.g., /tip @alice 0.5 SOL)
Utility Commands
Command
Description
/snake
Open snake game
/status <text>
Set profile status
/login
Login prompt
/logout
Sign out
/help
Display help menu
DJ Commands
Command
Description
/dj
Start a DJ session in the current room
Note
All commands are case-insensitive. /Join and /join work the same way. Commands that require a target user accept partial name matches if there is only one match in the room.
No. All messages (rooms and DMs) are encrypted end-to-end with AES-256-GCM on your device before they leave it. Relay nodes store and forward only encrypted ciphertext. There is no key escrow, no backdoor, and no way for anyone other than the intended recipients to decrypt your messages.
Does Backspace.me collect any data?
Relay nodes store encrypted messages (with a 7-day TTL), user profiles, and room state to keep the network functional. All message content is stored as encrypted ciphertext that the server cannot read. Backspace.me does not run analytics, telemetry, or tracking of any kind.
What do relay nodes know about me?
Relay nodes know your connection IP, your public key, and which rooms you are in. For DMs, the relay node stores and forwards encrypted ciphertext. It knows the participants in a DM session but cannot read the message contents.
Minting & Identity
What happens if I lose my recovery phrase?
Your identity is permanently lost. There is no account recovery, no password reset, and no support team that can restore it. Your minted nickname becomes unrecoverable. This is why backing up your 24-word recovery phrase is critical.
Can I mint while offline?
No. Proof-of-Uptime requires your app to be actively connected to the relay network. Minting credits accumulate only while your app is online and connected.
How long does minting take?
A typical name (13+ characters) takes about 1 hour. Shorter names take significantly longer, with 1-2 character names requiring up to 30 days of continuous uptime. Shorter names also require witnesses from multiple unique relay nodes.
Can two people mint the same name?
No. Name registration is first-come, first-served. Once a name is minted and the registration is broadcast to the network, it is locked to the minter's key pair.
Wallet & Games
Is the wallet safe?
The wallet is self-custodial. Your keys are generated and stored locally on your device, encrypted at rest. There is no server-side key storage. Transaction signing happens entirely on the client side.
Are Snake tournaments fair?
Yes. All scores are validated server-side to prevent cheating. Automatic refunds are issued if anything goes wrong (not enough players, draw, payout failure). A safety net auto-refunds after 12 minutes if no winner is determined.
What is the house fee?
A 3% fee is applied on wallet sends, tips, and game payouts. This fee supports the network infrastructure.
General
Is Backspace.me free?
Yes. Backspace.me is free to use. There are no subscription fees, no ads, and no premium tiers. The only "cost" is the uptime you contribute to mint a nickname.
What platforms does Backspace.me support?
Backspace.me is available as an Electron desktop application (Windows) and a web client at web.backspace.me. Windows builds are available as portable and installer packages. Building from source supports macOS and Linux as well. More platforms are coming soon.
Do I receive messages sent while I was offline?
Yes, for DMs. Direct messages are queued on the relay node and delivered when you come back online. Room messages are stored on the relay nodes with a 7-day TTL, so you can catch up on recent room history when you reconnect.
What are Spaces?
Spaces are user-created virtual servers within Backspace.me. Each Space has its own rooms, admin system, and member list, but runs on the existing network infrastructure. Your global identity, friends, wallet, and DMs carry across all Spaces.
What are Animojis?
Animojis are animated emoji stickers you can send in rooms and DMs. They use Lottie animations for smooth, lightweight animated expressions that play inline in the chat.