Technical Architecture

Simple to use.
Sophisticated inside.

A look under the hood — how VELA achieves privacy, performance, and compliance simultaneously. No compromises.

From signup to first message.

1
Create a pseudonymous identity

Choose a username and password. That's it. No email, no phone, no real name required. A cryptographic key pair is generated on your device — your identity lives on your device, not our server.

Zero-Knowledge Identity
2
Set your visibility preferences

Choose who can discover you: Everyone, Connections only, Category searchers, or Ghost. You can also set per-category rules — visible to electronics buyers but hidden from everyone else.

Granular Privacy Control
3
Search and discover

Search for people, products, or services in any language. Results respect visibility settings — ghost users never appear. Results are ranked by trust score and relevance, never by who paid more.

Privacy-Respecting Search
4
Connect and message

Send a connection request (optional) or start a conversation directly. The VELA server matches your device with the recipient's device, then steps aside. All communication is P2P from that point on.

P2P Handshake
5
Messages arrive, translated if needed

The encrypted message arrives on the recipient's device, is decrypted locally, and (if translation is enabled) translated on-device using an offline language model. At no point does VELA see plaintext.

On-Device Decryption + Translation

What the server never sees.

// VELA Architecture — simplified [ Device A ] [ VELA Server ] [ Device B ] | | | |-- 1. Encrypt message (local) ---→ | | |-- 2. Send encrypted blob -------→ | | | |-- 3. Find Device B --------→ | | | (reads: recipient ID only) | | |← 4. Return Device B IP ----→ | | | (server exits the loop) | |←———————————————————————————————→ | ←———————————————————————→ | | 5. WebRTC P2P channel opens | | | (direct device-to-device) | | | | | |←—————————— 6. Encrypted message travels P2P ——————————————————→ | | | | | // Server never sees this ^ | | | | 7. Decrypt (local) → | | 8. Translate (local)→ | | 9. User reads msg → | // Key point: Steps 6-9 happen entirely outside VELA's servers. // VELA sees: recipient ID, timestamp, blob size. Nothing else.

Built with the right tools.

Mobile
React Native + Expo— Single codebase for iOS & AndroidPhase 1
Web
Next.js— Server-side rendering, fast, SEO-friendlyPhase 2
Backend
Node.js + Fastify— Fast, minimal, handles WebSocket wellPhase 1
Database
PostgreSQL + Redis— Persistent store + fast session/cachePhase 1
P2P
WebRTC + STUN/TURN— Peer discovery and direct connectionPhase 1
Encryption
Signal Protocol (libsodium)— Industry gold standard E2EEPhase 1
Translation
Google ML Kit— On-device, 50+ languages, no cloud callPhase 1
Payments
Stripe + local gateways— Fiat, region-specific methodsPhase 2
Blockchain
Solana— Fast, cheap transactions, mobile-friendlyPhase 3
Hosting
AWS (EU) + Hetzner— GDPR compliant data residencyPhase 1