@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.
Files changed (2) hide show
  1. package/README.md +35 -19
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  <p align="center">
2
- <img src="https://raw.githubusercontent.com/telorun/telo/main/assets/telo.png" alt="Telo" width="200" />
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 backends.</p>
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 is an execution engine (Micro-Kernel) that runs logic defined entirely in YAML manifests. Instead of writing imperative backend code, you define your routes, databases, schemas, and AI workflows as atomic, interconnected YAML documents. Telo takes those manifests and runs them.
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
- Built to be language-agnostic and infinitely extensible.
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 backend
29
+ # Reconcile your manifest into a running application
26
30
  $ telo ./examples/todo-app
27
31
 
28
- {"level":30,"time":1771610393008,"pid":1310178,"hostname":"dev","msg":"Server listening at http://127.0.0.1:8077"}
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 Standards:** Built on YAML, JSON Schema, and CEL — no proprietary DSL.
34
- - **Static Analysis:** CEL type checking, reference validation, and IDE diagnostics catch errors before runtime.
35
- - **Micro-Kernel Architecture:** Telo itself knows nothing about HTTP or SQL. Everything is a module you import, scope, and compose with typed variable and secret contracts.
36
- - **Language Agnostic:** Available as a Node.js runtime today, with a shared YAML runtime contract that allows for future Rust or Go implementations without changing your manifests.
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
- - **Loads** YAML resources and compiles CEL expressions (`!cel`, `!interpolate`) into an in-memory registry.
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 under heavy development. While it is pre-1.0, breaking changes ship in **minor** releases — manifest shapes, kind schemas, and APIs can change between versions. Pin your imports and expect to update manifests when you upgrade. The core runtime, module system, and standard library are functional, but Telo is not yet recommended for production use.
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 lands when the Rust kernel reaches feature parity with the Node.js implementation** — that is the milestone that freezes the manifest contract across runtimes.
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 control plane that routes work based on those definitions.
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.0",
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.111.0"
36
+ "@telorun/sdk": "0.126.0"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@telorun/sdk": "*"