https://github.com/cartesiancs/vessel
Orchestrate physical devices with a single platform 🦾
https://github.com/cartesiancs/vessel
iot-platform physical-ai rust typescript
Last synced: 24 days ago
JSON representation
Orchestrate physical devices with a single platform 🦾
- Host: GitHub
- URL: https://github.com/cartesiancs/vessel
- Owner: cartesiancs
- License: apache-2.0
- Created: 2025-08-10T05:28:43.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-09-14T09:07:52.000Z (24 days ago)
- Last Synced: 2025-09-14T11:26:43.208Z (24 days ago)
- Topics: iot-platform, physical-ai, rust, typescript
- Language: TypeScript
- Homepage: https://vessel.cartesiancs.com
- Size: 3.79 MB
- Stars: 285
- Watchers: 4
- Forks: 31
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- fucking-awesome-rust - cartesiancs/vessel - C2 (Command & Control) software for orchestrating physical devices. (Applications / Utilities)
- awesome-rust - cartesiancs/vessel - C2 (Command & Control) software for orchestrating physical devices. (Applications / Utilities)
README
![]()
Vessel
The open source alternative to Anduril for self-defence
Visit Website · Report Bugs · Docs## About The Project

Vessel is the **C2 (Command & Control) software** for connecting, monitoring, and orchestrating arrays of physical sensors via an intuitive, visual flow-based interface.
This project is to build a "proactive security system". To achieve this, the following three functions are necessary:
1. **Connect** to Physical Device
2. **Detect** Threats
3. **Control** and RespondThis project solves the problems with existing **home security systems**. Current systems fail to protect against burglaries, trespassing, theft—and even war.
So we plan to open-source the technology used in existing defense systems.
This system allows you to analyze video and audio sources with AI/ML technology. And automate actions through Flow-based operations. The Flow provides the flexibility to select multiple AI models and connect them directly to stream sources.
When everything is implemented, individuals will be able to protect themselves from any threats.
> [!NOTE]
> 🚧 This project is under active development. Some features may be unstable or subject to change without notice.## Features
- Connect all sensers (MQTT, RTP, RTSP, ...)
- RTP Audio & Video Streaming
- RTSP Video Streaming
- Flow Visual Logic
- Publish MQTT with Flow
- Map based UI
- Home Assistant Integration## Develop
Get your local copy up and running.
#### Prerequisites
- [Rust](https://www.rust-lang.org/) & Cargo
- [Node.js](https://nodejs.org/en/) (v18+) and npm
- [gstreamer](https://gstreamer.freedesktop.org/)
- [python3.12+](https://www.python.org/)
- [mosquitto (MQTT)](https://mosquitto.org/) (additional)#### 1. Server Setup
```bash
# 1. Clone the repository
git clone https://github.com/cartesiancs/vessel.git
cd vessel/apps/server# 2. Copy and configure environment variables
cp .env.example .env
# nano .env (Modify if needed)# 3. Run database migrations
diesel setup
diesel migration run# 4. Run the server
cargo run
```#### 2. Client Setup
```bash
# 1. Install dependencies
npm install# 2. Run the development server
npm run client
```## Compile
This command compiles the entire project, including both the server and the client, into a single executable file.
```bash
npm run build
```The compiled binary, named 'server', will be located in the target/release directory.
> To run the server executable, you must have a .env file in the same directory (target/release).
## Roadmap
Please visit our Roadmap page below:
[Roadmap Page >](https://vessel.cartesiancs.com/roadmap)
## Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Please refer to our [CONTRIBUTING.md](CONTRIBUTING.md) for details.
## Contributors
## License
Distributed under the Apache-2.0 License. See [LICENSE](LICENSE) for more information.
## Disclaimer
This project is intended for academic and research purposes only. It is designed to facilitate the connection and control of physical devices. All responsibility for its use lies with the user.