DBX
Minimal, blazing-fast API proxy for edge and embedded systems.
DBX is a minimal, blazing-fast Redis API proxy designed for edge and embedded systems. Built in Rust with TypeScript SDK support, providing REST and WebSocket APIs for Redis operations.
DBX Documentation
Welcome to the DBX documentation! DBX is a lightweight, high-performance Redis API proxy designed for edge and embedded systems.
What is DBX?
DBX is a minimal and portable HTTP/WebSocket proxy that exposes Redis through a unified API layer. Built in Rust, DBX is optimized for edge runtimes like Cloudflare Workers, Raspberry Pi, and RISC-V boards.
Key Features
- 🚀 Lightweight: Minimal footprint, perfect for edge computing
- 🔌 Redis-Focused: Optimized Redis operations with connection pooling
- 🌐 Dual Interface: HTTP REST API + WebSocket real-time updates
- 📱 TypeScript SDK: Full client library with type safety via NAPI bindings
- ⚡ High Performance: Built in Rust for maximum efficiency
- 🔧 Pluggable: Easy to extend with new database backends
Quick Start
Using Docker
# Run with Docker
docker run -d --name dbx -p 3000:3000 \
-e REDIS_URL=redis://localhost:6379 \
effortlesslabs/0dbx_redis:latest
Using TypeScript SDK
# Install SDK
npm install @0dbx/redis
# Use in your code
import { DbxRedisClient } from "@0dbx/redis";
const client = new DbxRedisClient("http://localhost:3000");
await client.string.set("key", "value");
const value = await client.string.get("key");
Documentation Sections
Getting Started
- Quick Start Guide - Get up and running in minutes
- Installation - Detailed installation instructions
- Configuration - Learn about configuration options
API Reference
REST API
- String Operations - String data type operations
- Hash Operations - Hash data type operations
- Set Operations - Set data type operations
- Admin Operations - Server administration
- Error Handling - Error codes and responses
WebSocket API
- Connection Guide - WebSocket connection setup
- String Operations - WebSocket string operations
- Hash Operations - WebSocket hash operations
- Set Operations - WebSocket set operations
- Admin Operations - WebSocket admin operations
SDK Documentation
TypeScript SDK
- Installation - SDK setup and configuration
- String Operations - String operations with TypeScript
- Set Operations - Set operations with TypeScript
- WebSocket Operations - WebSocket operations with TypeScript
Deployment
- Docker Deployment - Deploy with Docker
- Cloud Deployment - Deploy to cloud platforms
Development
- Development Setup - Set up development environment
- Contributing - How to contribute to DBX
API Endpoints Overview
REST API Endpoints
Endpoint | Method | Description |
---|---|---|
/redis/string/{key} | GET | Get string value |
/redis/string/{key} | POST | Set string value |
/redis/string/{key} | DELETE | Delete string value |
/redis/hash/{key}/field/{field} | GET | Get hash field |
/redis/hash/{key}/field/{field} | POST | Set hash field |
/redis/set/{key}/members | GET | Get set members |
/redis/set/{key}/members | POST | Add set members |
/redis/admin/health | GET | Health check |
/redis/admin/ping | GET | Ping server |
WebSocket Endpoints
Endpoint | Description |
---|---|
ws://localhost:3000/redis_ws/string/ws | String operations |
ws://localhost:3000/redis_ws/hash/ws | Hash operations |
ws://localhost:3000/redis_ws/set/ws | Set operations |
ws://localhost:3000/redis_ws/admin/ws | Admin operations |
Use Cases
Edge Computing
Deploy DBX on edge nodes to provide local database access with cloud synchronization capabilities.
IoT Applications
Use DBX in embedded systems to provide a standardized API for various database backends.
Microservices
Integrate DBX as a database proxy layer in microservice architectures for consistent data access patterns.
Real-time Applications
Leverage WebSocket connections for real-time data synchronization and event streaming.
Community
- GitHub: effortlesslabs/dbx
- Issues: Report bugs and request features
- Discussions: Join the community
License
DBX is open source and available under the MIT License.
Features
🚀 Performance
Ultra-low latency optimized for edge computing environments with high throughput and minimal overhead.
🔧 Redis Operations
String, Hash, and Set operations with batch support and connection pooling.
🌐 Connectivity
REST API and WebSocket connections with a full-featured TypeScript SDK.
🛡️ Edge-Optimized
~50MB Docker image designed for Cloudflare Workers, IoT devices, and microservices.
Quick Start
# Run with Docker
docker run -d --name dbx -p 3000:3000 \
-e REDIS_URL=redis://localhost:6379 \
effortlesslabs/0dbx_redis:latest
# Use the TypeScript SDK
npm install @0dbx/redis
Community
- GitHub: effortlesslabs/dbx
- Twitter: @effortlesslabs
- Discussions: GitHub Discussions