gr-base/doc/stories.org
2025-08-14 15:31:42 +07:00

2.3 KiB

Grimu-R stories

As a Grimu-R project developer, I want

To get started quickly

And import my lousy shell scripts or code notebooks

And have the entire dev environment set up with a single command

And employ readily available scrolls, such as

A wrapper supporting most Unix utilities specified via inscription
HTTP fetch / post / stream / subscribe to event source
General purpose templates (Mustache)
Basic HTML with simple query param state
Large file reader, the file being
Arbitrary text (streamed)
CSV / JSON lines
SQLite / DuckDB database
Integrations for services like
Telegram
Slack
Database servers

To have full granular control over weave's dataflow

And push or pull data as needed

And batch data

And throttle/debounce data

And retry computations if they fail

With flexible custom retry policies

To depend on other Grimu-R projects

And get their environments composed with mine

And use their scrolls

And use their ornaments

To author scroll/spell code in

Browser JavaScript

Deno TypeScript

GHC Haskell

SQL (DuckDB, SQLite)

Python

To extend the available toolset

By authoring my own scrolls

By calling executables outside of the Nix store

By upstreaming support for new programming language with its ecosystem

To deploy my project as

Standalone CLI

CLI + RPC server

Web application server hosting a frontend

Mobile application

React component

To interact with the weave programmatically

And inspect its contents

And run ornaments

And edit it

And check its validity

As a Grimu-R project user, I want

To build and host it myself

To use loom to edit the client-side part of the weave

To keep the changes I made

In the browser's local storage

And export them elsewhere

As a Grimu-R loom visual editor consumer, I want

To use it interactively

And see the actual data passing across stitches

And test parts of the weave with mock data

And quickly add debug displays

And change the inscriptions

Right in the visual editor
In an external editor of my preference

And undo/redo my changes