How enclicainteractive/voltage works
Volt Server is the backend for a decentralized chat platform. A client request enters the Express server, passes through middleware, and reaches domain APIs for authentication, profiles, communities and channels, or messaging; those APIs read or update platform state and return responses. The product also supports media delivery, federation and self-hosting, bots, discovery, safety automation, and real-time communication. The tree and README establish these capabilities, but sampled route excerpts do not expose all their service wiring, so those links are intentionally omitted.
Main entry points: server.js Express server · dataService.js Data services · userRoutes.js User and friends API · serverRoutes.js Servers and channels
Components 23
HTTP entry
- Express server
server.js - Request middleware
middleware
Chat domains
- Authentication API
routes/authRoutes.js - User and friends API
routes/userRoutes.js - Servers and channels
routes/serverRoutes.js - Channel operations
routes/channelRoutes.js - Messages and DMs
routes/messageRoutes.js - WebSocket API
microservices/websocket.js
Platform features
- Uploads and media
routes/uploadRoutes.js - CDN service
services/cdnService.js - Federation API
routes/federationRoutes.js - Self-Volt API
routes/selfVoltRoutes.js - Bot API
routes/botRoutes.js - Discovery API
routes/discoveryRoutes.js - Safety and automod
routes/safetyRoutes.js
Runtime services
- Data services
services/dataService.js - Storage adapter
services/storageService.js - Configured data store
- WebSocket manager
services/wsManager.js
Other components
- Client
- Redis
- Federated servers
- CDN provider
Connections 25
- Client → Express server: sends requests
- Express server → Request middleware: applies middleware
- Express server → Authentication API: routes requests
- Express server → User and friends API: routes requests
- Express server → Servers and channels: routes requests
- Express server → Channel operations: routes requests
- Express server → Messages and DMs: routes requests
- Express server → WebSocket API: serves sockets
- Express server → Uploads and media: routes requests
- Express server → Federation API: routes requests
- Express server → Self-Volt API: routes requests
- Express server → Bot API: routes requests
- Express server → Discovery API: routes requests
- Express server → Safety and automod: routes requests
- User and friends API → Data services: reads and updates
- Servers and channels → Data services: saves records
- Channel operations → Data services: reads channel data
- Data services → Storage adapter: initializes storage
- Storage adapter → Configured data store: reads and writes
- Uploads and media → CDN service: uploads files
- CDN service → CDN provider: stores media
- Federation API → Federated servers: federates
- Self-Volt API → Federated servers: connects hosts
- WebSocket API → WebSocket manager: manages connections
- WebSocket manager → Redis: shares presence