initial commit
This commit is contained in:
40
README.md
Normal file
40
README.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# 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](#dispatcher) dispatches jobs to execute scripts to [workers](#worker) over redis. Workers spawn appropriate engine instances to execute scripts within the defined [confines]() of the job.
|
||||
|
||||
### Components
|
||||
|
||||
#### [Dispatcher](./core/dispatcher)
|
||||
|
||||
Component responsible for distributing jobs to workers over Redis.
|
||||
|
||||
#### [Engine](./core/engine)
|
||||
|
||||
A process that runs a script in a confined environment.
|
||||
|
||||
#### [Job](./core/job)
|
||||
|
||||
A unit of work that executes a Rhai or Hero script.
|
||||
|
||||
#### [Worker](./core/worker)
|
||||
|
||||
An entity that processes jobs dispatched by the dispatcher.
|
||||
|
||||
|
||||
## Interfaces
|
||||
|
||||
### Websocket
|
||||
|
||||
### Unix
|
Reference in New Issue
Block a user