Go to file
2025-07-29 01:15:23 +02:00
benches/simple_rhai_bench initial commit 2025-07-29 01:15:23 +02:00
core initial commit 2025-07-29 01:15:23 +02:00
interfaces initial commit 2025-07-29 01:15:23 +02:00
proxies/http initial commit 2025-07-29 01:15:23 +02:00
.gitignore initial commit 2025-07-29 01:15:23 +02:00
Cargo.lock initial commit 2025-07-29 01:15:23 +02:00
Cargo.toml initial commit 2025-07-29 01:15:23 +02:00
README.md initial commit 2025-07-29 01:15:23 +02:00

Hero

Hero is a program that runs scripts in contexts on behalf of a peer. Hero aims to support a language sufficient to support all of one's digital actions. As such, hero can become a tool of digital sovereignty, allowing people and groups to own their own structured data and functionality to act on it.

Terminology

Term Definition
Hero A program that runs scripts in various contexts on behalf of a peer.
Heroscript A script that runs in a confined environment on behalf of a peer.
Rhai A scripting language integrated into the Hero environment for script execution.

Core

In its core, a dispatcher dispatches jobs to execute scripts to workers over redis. Workers spawn appropriate engine instances to execute scripts within the defined confines of the job.

Components

Dispatcher

Component responsible for distributing jobs to workers over Redis.

Engine

A process that runs a script in a confined environment.

Job

A unit of work that executes a Rhai or Hero script.

Worker

An entity that processes jobs dispatched by the dispatcher.

Interfaces

Websocket

Unix