@reventlessdev/reventless-gwt 1.0.0-alpha.101 → 1.0.0-alpha.102

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/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 1.0.0-alpha.102 (2026-07-11)
7
+
8
+ **Note:** Version bump only for package @reventlessdev/reventless-gwt
9
+
10
+
11
+
12
+
13
+
6
14
  # 1.0.0-alpha.101 (2026-07-11)
7
15
 
8
16
  **Note:** Version bump only for package @reventlessdev/reventless-gwt
package/README.md ADDED
@@ -0,0 +1,90 @@
1
+ [![npm](https://img.shields.io/npm/v/@reventlessdev/reventless-gwt.svg?label=npm)](https://www.npmjs.com/package/@reventlessdev/reventless-gwt)
2
+ [![License: Apache-2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
3
+ [![Docs](https://img.shields.io/badge/docs-reventless.dev-blue)](https://docs.reventless.dev)
4
+
5
+ # @reventlessdev/reventless-gwt
6
+
7
+ > ⚠️ **Alpha.** APIs and on-disk formats can change without notice between releases.
8
+ > Pin exact versions and expect breaking changes.
9
+
10
+ **Given-When-Then test DSLs and a CLI runner** for slice-level testing in
11
+ [Reventless](https://docs.reventless.dev) — a spec-driven, event-sourced CQRS
12
+ framework written in [ReScript](https://rescript-lang.org). Each DSL wraps one
13
+ kind of framework component (aggregate, slice, projection, automation,
14
+ translation, flow) in a declarative triple-A (`given / when / then`) surface, and
15
+ the `reventless-dev` CLI discovers and runs those tests across a workspace.
16
+
17
+ ## What it provides
18
+
19
+ ### ReScript test DSLs
20
+
21
+ Every component kind has a functor that produces the same
22
+ `describe / test / given* / when* / then*` combinator surface:
23
+
24
+ - **`Behavior_GWT`** — event-sourced behavior tests for aggregates and
25
+ StateChangeSlices (`givenEvents → whenCmd → thenEmits`), including DCB
26
+ append-condition assertions.
27
+ - **`Projection_GWT`** / **`MultiSourceProjection_GWT`** — single-source
28
+ (StateViewSlice) and multi-source (ReadModel) projection tests.
29
+ - **`Query_GWT`** — the read side: which query patterns the projected state must
30
+ support (indexes, sub-ids, resolvers).
31
+ - **`Automation_GWT`** — AutomationSlice reaction tests (event → command).
32
+ - **`InboundTranslation_GWT`** / **`OutboundTranslation_GWT`** /
33
+ **`EventMapping_GWT`** / **`Mapping_GWT`** — cross-component translation tests.
34
+ - **`Flow_GWT`** — cross-slice / end-to-end tests that thread one event log
35
+ through a chain of slices, verifying the wiring between tiles of an Event
36
+ Modeling board.
37
+
38
+ ### CLI runner
39
+
40
+ The package installs the `reventless-dev` command (alias: `reventless-gwt`):
41
+
42
+ ```
43
+ reventless-dev run [--format=<fmt>] [--filter=<id>] [--stream] [--watch] [path...]
44
+ reventless-dev discover [--format=vscode] [path...]
45
+ reventless-dev watch [--format=<fmt>] [--filter=<id>] [path...]
46
+ reventless-dev platform [--format=vscode] [--backend=<b>] [--ui-ports] [path...]
47
+ ```
48
+
49
+ It walks a workspace to discover compiled GWT tests, runs them, and reports
50
+ through pluggable formatters — `human`, `json`, `tap`, `junit`, and `vscode`
51
+ (NDJSON). It also emits the domain graph / component inventory used by editor
52
+ surfaces and can launch a local platform for integration runs.
53
+
54
+ ## Where it fits
55
+
56
+ `reventless-gwt` builds on
57
+ [`@reventlessdev/reventless-core`](https://www.npmjs.com/package/@reventlessdev/reventless-core)
58
+ and [`@reventlessdev/reventless-spec`](https://www.npmjs.com/package/@reventlessdev/reventless-spec):
59
+ the DSLs test the same component specs you write against core, with no storage or
60
+ cloud adapter required. Its `--format=vscode` output speaks the
61
+ [`@reventlessdev/reventless-domain-protocol`](https://www.npmjs.com/package/@reventlessdev/reventless-domain-protocol)
62
+ NDJSON contract, so the same runs drive the VS Code extension's test tree and
63
+ domain views.
64
+
65
+ ## Install
66
+
67
+ ```bash
68
+ pnpm add -D @reventlessdev/reventless-gwt
69
+ ```
70
+
71
+ Register it as a ReScript dependency in `rescript.json`:
72
+
73
+ ```json
74
+ {
75
+ "dependencies": ["@reventlessdev/reventless-gwt"]
76
+ }
77
+ ```
78
+
79
+ Requires ReScript `^12.3.0` (peer dependency). Run the CLI with `pnpm exec
80
+ reventless-dev run` (or add it to a package script).
81
+
82
+ ## Links
83
+
84
+ - 📚 Documentation — [docs.reventless.dev](https://docs.reventless.dev)
85
+ - 📦 Repository — [ReventlessDev/reventless-core](https://github.com/ReventlessDev/reventless-core)
86
+ - 📋 [Changelog](./CHANGELOG.md)
87
+
88
+ ## License
89
+
90
+ [Apache-2.0](https://opensource.org/licenses/Apache-2.0)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-gwt",
3
- "version": "1.0.0-alpha.101",
3
+ "version": "1.0.0-alpha.102",
4
4
  "description": "Given-When-Then DSLs and CLI runner for Reventless slice testing",
5
5
  "license": "Apache-2.0",
6
6
  "bin": {
@@ -20,17 +20,17 @@
20
20
  "chokidar": "^3.6.0",
21
21
  "picocolors": "^1.1.1",
22
22
  "sury": "11.0.0-alpha.4",
23
- "@reventlessdev/rescript-jest": "1.0.0-alpha.6",
24
- "@reventlessdev/reventless-domain-protocol": "1.0.0-alpha.19",
25
- "@reventlessdev/reventless-core": "3.0.0-alpha.155",
26
- "@reventlessdev/rescript-effect": "0.1.0-alpha.26",
27
- "@reventlessdev/reventless-infra": "3.0.0-alpha.96",
28
- "@reventlessdev/reventless-spec": "3.0.0-alpha.74"
23
+ "@reventlessdev/rescript-effect": "0.1.0-alpha.27",
24
+ "@reventlessdev/rescript-jest": "1.0.0-alpha.7",
25
+ "@reventlessdev/reventless-core": "3.0.0-alpha.156",
26
+ "@reventlessdev/reventless-infra": "3.0.0-alpha.97",
27
+ "@reventlessdev/reventless-domain-protocol": "1.0.0-alpha.20",
28
+ "@reventlessdev/reventless-spec": "3.0.0-alpha.75"
29
29
  },
30
30
  "devDependencies": {
31
31
  "rescript": "^12.3.0",
32
32
  "sury-ppx": "11.0.0-alpha.2",
33
- "@reventlessdev/reventless-ppx": "1.0.0-alpha.52"
33
+ "@reventlessdev/reventless-ppx": "1.0.0-alpha.53"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "rescript": "^12.3.0"