wifi-densepose-api
REST and WebSocket API layer for the WiFi-DensePose pose estimation system.
Overview
wifi-densepose-api provides the HTTP service boundary for WiFi-DensePose. Built on
axum, it exposes REST endpoints for pose queries, CSI frame
ingestion, and model management, plus a WebSocket feed for real-time pose streaming to frontend
clients.
Status: This crate is currently a stub. The intended API surface is documented below.
Planned Features
- REST endpoints -- CRUD for scan zones, pose queries, model configuration, and health checks.
- WebSocket streaming -- Real-time pose estimate broadcasts with per-client subscription filters.
- Authentication -- Token-based auth middleware via
towerlayers. - Rate limiting -- Configurable per-route limits to protect hardware-constrained deployments.
- OpenAPI spec -- Auto-generated documentation via
utoipa. - CORS -- Configurable cross-origin support for browser-based dashboards.
- Graceful shutdown -- Clean connection draining on SIGTERM.
Quick Start
// Intended usage (not yet implemented)
use Server;
async
Planned Endpoints
| Method | Path | Description |
|---|---|---|
GET |
/api/v1/health |
Liveness and readiness probes |
GET |
/api/v1/poses |
Latest pose estimates |
POST |
/api/v1/csi |
Ingest raw CSI frames |
GET |
/api/v1/zones |
List scan zones |
POST |
/api/v1/zones |
Create a scan zone |
WS |
/ws/poses |
Real-time pose stream |
WS |
/ws/vitals |
Real-time vital sign stream |
Related Crates
| Crate | Role |
|---|---|
wifi-densepose-core |
Shared types and traits |
wifi-densepose-config |
Configuration loading |
wifi-densepose-db |
Database persistence |
wifi-densepose-nn |
Neural network inference |
wifi-densepose-signal |
CSI signal processing |
wifi-densepose-sensing-server |
Lightweight sensing UI server |
License
MIT OR Apache-2.0