wifi-densepose-api 0.2.0

REST API for WiFi-DensePose
Documentation
  • Coverage
  • 100%
    1 out of 1 items documented0 out of 0 items with examples
  • Size
  • Source code size: 4.73 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 966.17 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 12s Average build duration of successful builds.
  • all releases: 12s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • ruvnet/RuView
    45689 6159 13
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • ruvnet

wifi-densepose-api

Crates.io Documentation License

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 tower layers.
  • 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 wifi_densepose_api::Server;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let server = Server::builder()
        .bind("0.0.0.0:3000")
        .with_websocket("/ws/poses")
        .build()
        .await?;

    server.run().await
}

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