mirror of
https://github.com/bunny-lab-io/Borealis.git
synced 2025-10-26 15:41:58 -06:00
77c38faf1d9a89eae61b32dc5e97a4b617c764d5
🌌 Borealis - Workflow Automation via Visual Node Graphs
Borealis is a cross-platform visual automation platform that lets you design and execute workflows using drag-and-drop "nodes" in an interactive graph. Think of it like building a flowchart that actually runs — in real-time.
Powered by a Flask backend and a React Flow frontend, Borealis is perfect for anyone looking to automate tasks, visualize data processing, or build reactive tools using a modular, extensible system.
✨ Key Features
| Feature | Description |
|---|---|
| 🧠 Visual Editor | Intuitive graph-based UI powered by React Flow. Nodes represent data, logic, or actions. |
| ⚙️ Dynamic Node Updates | All nodes react to data changes live using a shared memory bus and global update timer. |
| 🔗 Live Connections | Connect nodes via "wires" to transmit values in real time — no refresh needed. |
| 🖼️ On-Screen GUI Interactions | Supports custom Python-based GUI prompts, like on-screen region selectors. |
| 🔍 OCR and Vision Support | Use EasyOCR and Tesseract to extract data from screenshots or webcam feeds. |
| 🧩 Custom Node Support | Easily define your own nodes using JSX — each one modular and reactive. |
| 🚀 Cross-Platform | Works on Windows, Linux, and macOS (via provided .sh and .ps1 launch scripts). |
🧱 Core Components
| Component | Role |
|---|---|
| Flask Server | Hosts API endpoints and serves the React frontend |
| React Flow UI | Visual canvas for building and managing workflows |
| Python Virtual Env | Encapsulates dependencies, avoids global installs |
| Shared Value Bus | All nodes communicate via window.BorealisValueBus |
⚡ Getting Started
# Windows
Set-ExecutionPolicy Unrestricted -Scope Process
.\Launch-Borealis.ps1
# Linux / macOS
bash Launch-Borealis.sh
The launch script will:
- 🐍 Create a virtual Python environment
- 📦 Install all required Python + JS dependencies
- ⚛️ Build the React app
- 🌐 Launch the Flask web server
🧠 How It Works
Borealis workflows run on live data propagation. Each node checks for incoming values (via edges) and processes them on a recurring timer (default: 200ms). This allows for highly reactive, composable logic graphs.
Description
Languages
Python
49.5%
JavaScript
42.4%
PowerShell
6.5%
Shell
1.1%
CSS
0.3%
Other
0.1%