add website with docs

This commit is contained in:
EatThePooh 2025-08-25 18:17:01 +07:00
parent 870c20e745
commit fcf1979a1d
12 changed files with 541 additions and 314 deletions

46
website/doc/glossary.org Normal file
View file

@ -0,0 +1,46 @@
#+title: Grimu-R glossary
* Weave
Defines a collection of braids.
Represented by files on disk.
* Braid
Has reactive inputs and outputs.
Serves as an externally invocable entry point.
Contains sigils and/or nested braid instances connected by strands.
Can be distributed within a schism aspect.
* Sigil
Has reactive inputs and outputs.
Atomic execution unit.
Cannot be directly invoked by an aspect consumer.
May have an inscription.
Created from a scroll and executed in the grimoire environment.
* Strand
Connects a reactive input to a compatible reactive output.
Can be cadence-decorated on both upstream and downstream ends.
May be parameterized by a reactive input, consuming variable assignments for the cadence decoration.
* Cadence
Defines reactive behavior.
May refer to variables defined by the reactive input.
* Inscription
Defines a script, a template or a configuration for a sigil to be executed with.
May be defined statically in the weave or considered a reactive input.
* Scroll
Defines source code, its build dependencies and runtime environment.
Provides a default sigil configuration.
Provides default upstream/downstream cadence decorators for outputs/inputs respectively.
Declares runtime compatibility (browser-only, non-browser, or universal).
* Grimoire
Complete environment required to execute (a part of) a weave.
* Schism
Splits the weave by grouping its braids into coherent collections of aspects.
* Aspect
Represents a collection of entire braids as an individual program.
Uses rifts to communicate with other aspects within the same schism.
* Rift
Acts as a proxy for a braid instance that was separated into a different aspect.
Enables strands to cross process and network boundaries.
* Binding
Provides a build strategy for a schism.
Maps an aspect to a specific build recipe producing an executable or a container.
* Loom
Provisions tools for interactive or programmatic weaving and execution.

View file

@ -0,0 +1,35 @@
#+title: Grimu-R lifecycle guide
* Project initialization
- create your flake
- add Grimu-R base as input
- define and enter a dev shell
* Interactive weaving
- open Loom editor in the browser
- create a braid
- add sigils to it from the scrolls palette
- connect them with strands
- edit sigil inscriptions
- execute sigils by clicking on their buttons
- adjust cadence decoration
* Modular weaving
- factor out braids
- define your own scrolls
- import external scrolls and weaves as flake inputs
- export yours as flake outputs
- call braids from other programs
* Deployment pipeline
- define a schism with aspects containing braids
- define a binding
- build executables / containers
* User-side weaving (malleability)
- add Loom to the binding definition
- deploy the executable
- open Loom editor in the browser
- persist edits in the browser
- rebase persisted edits on top of new versions released by devs
* Testing and test automation
- use Loom in the browser to run and inspect interactively
- define test data right in the weave as static sigils
- extract test data from the weave with Loom CLI
- execute braids with test inputs with Loom CLI