@telorun/starlark 0.13.0 → 0.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -19
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="
|
|
2
|
+
<img src="assets/telo.svg" alt="Telo" width="120" />
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
<h1 align="center">Telo</h1>
|
|
6
6
|
|
|
7
|
-
<p align="center">Runtime for declarative
|
|
7
|
+
<p align="center">Runtime for declarative applications — backend services and the data screens on top of them.</p>
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="https://github.com/telorun/telo/actions/workflows/test.yml"><img alt="Tests" src="https://github.com/telorun/telo/actions/workflows/test.yml/badge.svg" /></a>
|
|
@@ -17,30 +17,45 @@
|
|
|
17
17
|
<img alt="Changesets" src="https://img.shields.io/badge/maintained%20with-changesets-176de3" />
|
|
18
18
|
</p>
|
|
19
19
|
|
|
20
|
-
Telo
|
|
20
|
+
Telo runs applications described in YAML files instead of written as program code. You declare your web APIs, databases, data screens (tables, forms, create/edit/delete) and AI workflows as small, connected YAML documents, and Telo checks them and runs them. There is no drag-and-drop screen builder: screens are declared in YAML like everything else.
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
Today you extend Telo in TypeScript (Rust for some native modules); the runtime is designed so other languages can be added.
|
|
23
|
+
|
|
24
|
+
**Where Telo is today:** the core runtime, module system, standard library and checker work, but Telo is pre-1.0 and not yet recommended for production use. See [Status](#status).
|
|
25
|
+
|
|
26
|
+
Deciding whether Telo fits your team? Start with [Compared to low-code platforms](https://telo.run/learn/vs-low-code), [Licensing](https://telo.run/learn/licensing) and the [examples](./examples/INDEX.md).
|
|
23
27
|
|
|
24
28
|
```bash
|
|
25
|
-
# Reconcile your manifest into a running
|
|
29
|
+
# Reconcile your manifest into a running application
|
|
26
30
|
$ telo ./examples/todo-app
|
|
27
31
|
|
|
28
|
-
{"level":
|
|
32
|
+
{"time":"2026-11-01T10:29:16.386Z","level":"INFO","severity":9,"msg":"Listening","resource":{"kind":"HttpServer.Server","name":"server","id":"HttpServer.Server.server"},"attributes":{"server.address":"0.0.0.0","server.port":8077,"url.scheme":"http"},"event_name":"http.server.started"}
|
|
29
33
|
```
|
|
30
34
|
|
|
35
|
+
(On a terminal the same record prints human-readable and coloured.)
|
|
36
|
+
|
|
37
|
+
## Get started
|
|
38
|
+
|
|
39
|
+
Install the CLI — a single executable that carries its own runtime:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
curl -fsSL https://telo.sh/install.sh | sh
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
On Windows, `irm https://telo.sh/install.ps1 | iex`. With Node.js already installed, `npm install -g @telorun/cli` gives the same `telo`.
|
|
46
|
+
|
|
47
|
+
Then follow [**Getting Started**](https://telo.run/learn/getting-started) on [telo.run](https://telo.run) — install, a first manifest, and what the kernel did with it — and [Your first HTTP API](https://telo.run/learn/first-http-api). Modules and their kinds are discoverable on the [hub](https://hub.telo.run).
|
|
48
|
+
|
|
31
49
|
## Why use Telo?
|
|
32
50
|
|
|
33
|
-
- **Open
|
|
34
|
-
- **
|
|
35
|
-
- **
|
|
36
|
-
- **
|
|
51
|
+
- **Open standards:** built on YAML, JSON Schema and CEL (a small expression language) — no proprietary language.
|
|
52
|
+
- **Mistakes caught before the app runs:** wrong references, wrong value types and missing inputs are reported with the exact place to fix, in the editor or in CI.
|
|
53
|
+
- **Everything is a module:** Telo itself knows nothing about HTTP or SQL. Each capability is a module you import and combine, with declared inputs and secrets.
|
|
54
|
+
- **Other runtimes are possible:** the runtime is Node.js today, with a shared YAML contract so other implementations can run the same manifests. A narrower Rust runtime exists and is in progress.
|
|
37
55
|
|
|
38
56
|
## What It Does
|
|
39
57
|
|
|
40
|
-
|
|
41
|
-
- **Resolves** resource dependencies via a multi-pass init loop, handling ordering automatically.
|
|
42
|
-
- **Indexes** resources by Kind and Name for constant-time lookup.
|
|
43
|
-
- **Dispatches** execution to the controller that owns each Kind.
|
|
58
|
+
Telo reads your YAML files, checks them, works out what depends on what, starts everything in the right order, and hands each piece to the code that implements it. For the mechanics, see [How Telo works](https://telo.run/learn/how-telo-works).
|
|
44
59
|
|
|
45
60
|
## Example manifest
|
|
46
61
|
|
|
@@ -48,9 +63,9 @@ See [examples/](./examples/) for a list of working applications.
|
|
|
48
63
|
|
|
49
64
|
## Status
|
|
50
65
|
|
|
51
|
-
Telo is
|
|
66
|
+
Telo is pre-1.0 on purpose. The core runtime, module system, standard library and checker work, but Telo is not yet recommended for production use. Breaking changes ship in **minor** releases: manifest shapes and module definitions can change between versions, so pin your imports and expect to update manifests when you upgrade (`telo migrate` rewrites old spellings for you).
|
|
52
67
|
|
|
53
|
-
**1.0
|
|
68
|
+
**1.0 is planned for when the second, Rust-based runtime can run everything the Node.js one can** — that is the milestone that freezes the manifest format across runtimes.
|
|
54
69
|
|
|
55
70
|
## The Meaning of Telo
|
|
56
71
|
|
|
@@ -76,8 +91,7 @@ At kernel execution time, execution is always routed by **Kind.Name**. The kerne
|
|
|
76
91
|
|
|
77
92
|
## Architecture
|
|
78
93
|
|
|
79
|
-
The architecture is inspired by Kubernetes-style manifests: declarative resources, explicit kinds, and a
|
|
80
|
-
Those manifests were taken to the next level by allowing them to run inside a standalone runtime host.
|
|
94
|
+
The architecture is inspired by Kubernetes-style manifests: declarative resources, explicit kinds, and a runtime that routes work based on those definitions. Unlike Kubernetes, the manifests run inside one standalone process rather than describing a cluster.
|
|
81
95
|
|
|
82
96
|
## See more at
|
|
83
97
|
|
|
@@ -87,11 +101,13 @@ Those manifests were taken to the next level by allowing them to run inside a st
|
|
|
87
101
|
|
|
88
102
|
## License
|
|
89
103
|
|
|
104
|
+
In plain terms: Telo is free to use, including commercially. You can build, host and sell your own products on it. You cannot offer Telo itself to others as a managed service without a commercial licence from CodeNet Sp. z o.o. (contact@codenet.pl). The modules, SDK, examples and docs you build with are MIT. Details: [Licensing](https://telo.run/learn/licensing).
|
|
105
|
+
|
|
90
106
|
Two licenses, split by directory. Each MIT directory carries its own `LICENSE`; everything else falls under the root [LICENSE](https://github.com/telorun/telo/blob/main/LICENSE), the Sustainable Use License.
|
|
91
107
|
|
|
92
108
|
| MIT | Sustainable Use |
|
|
93
109
|
| --- | --- |
|
|
94
|
-
| `cel/`, `sdk/`, `templating/`, `packages/glob/`, `packages/editor-protocol/` — the expression engine, the SDK and what a controller links against | `analyzer/`, `kernel/`, `cli/` — what loads, checks and runs a manifest |
|
|
110
|
+
| `cel/`, `message-format/`, `sdk/`, `templating/`, `packages/glob/`, `packages/editor-protocol/` — the expression engine, the message core, the SDK and what a controller links against | `analyzer/`, `kernel/`, `cli/` — what loads, checks and runs a manifest |
|
|
95
111
|
| `modules/`, `blueprints/` — the standard library | `packages/ide-support/`, `packages/language-server/`, `packages/language-host/`, `ide/` — the editor tooling |
|
|
96
112
|
| `starters/`, `examples/`, `docs/`, `benchmarks/` | `packages/runner-core/`, `packages/debug-wire/`, `packages/debug-ui/`, `apps/docker-runner/`, `apps/k8s-runner/` — the runners |
|
|
97
113
|
| `apps/hub/`, `apps/hub-web/`, `apps/plan-approval*/` | `apps/studio/`, `apps/authoring-agent/`, `pages/` and everything not listed |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@telorun/starlark",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.1",
|
|
4
4
|
"description": "Telo Starlark module - Starlark script execution for Telo manifests.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"telo",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/node": "^20.0.0",
|
|
35
35
|
"typescript": "^5.0.0",
|
|
36
|
-
"@telorun/sdk": "0.
|
|
36
|
+
"@telorun/sdk": "0.126.0"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"@telorun/sdk": "*"
|