Skip to content

SenswaveLabs/Backend

Repository files navigation

Senswave Backend

API set for managing your DIY devices.

Stats

Build Latest Release Open Issues Stars Commits License

Built With

C# .NET 10 ASP.NET Core PostgreSQL RabbitMQ MQTT SignalR Entity Framework

What is Senswave?

Senswave is a self-hosted and cloud backend platform for managing DIY smart home devices over MQTT. You organize your home into rooms, register custom devices with typed operations, and stream real-time data to dashboards.

Core capabilities:

  • Device control — define custom operations and push commands to any MQTT-capable device
  • Automations — trigger actions when sensor values cross thresholds or room occupancy changes
  • Live updates — subscribe to device state via SignalR for real-time dashboard widgets
  • Home sharing — invite users with owner or read-only access
  • Persistent broker — server-side MQTT connection keeps automations running when your phone is off

In this repository you will find backend solution that exposes .NET HTTP Web Api with SignalR events.

Example Use Cases

Control a custom LED controller

A Raspberry Pi Pico LED controller supports four modes: white, color, RGB, and loading. Through Senswave you switch modes and adjust brightness from a dashboard widget — no manual MQTT publish needed.

Auto-off lights when room is empty

A presence sensor in each room publishes occupancy data. An automation rule turns off all lights in the room when occupancy drops to zero — saves energy without any manual action.

Always-on automations without keeping your phone open

The Senswave worker holds a persistent MQTT connection server-side. Automations fire even when no client is connected, so your phone battery is not drained keeping a session alive.

How to Use

The easiest way to run Senswave locally is with Docker. See docker/README.md for full setup instructions, including environment variables, service configuration, and how to bring up the full stack with Docker Compose.

Contributing

Pull requests are welcome.

  • Read AGENTS.md for architecture concepts and development conventions before writing code.
  • Report bugs using the Bug report issue template.
  • Propose features using the Feature request issue template.

License

Distributed under the Apache License 2.0. See LICENSE for details.

About

Senswave backend services.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Contributors

Languages