@cratis/arc 22.167.0 → 22.168.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 +20 -13
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,10 +1,17 @@
1
- # Cratis Arc
1
+ ---
2
+ title: "Cratis Arc: CQRS framework for ASP.NET Core"
3
+ description: Cratis Arc is a CQRS framework for ASP.NET Core that exposes commands and queries over HTTP and generates TypeScript clients, without requiring event sourcing.
4
+ ---
2
5
 
3
- Arc is an open-source (MIT) opinionated CQRS application framework for ASP.NET Core with commands, queries, validation, authorization, and TypeScript proxy generation. It works without event sourcing, with optional Chronicle integration.
6
+ <a id="cratis-arc"></a>
4
7
 
5
- Arc hosts application behavior, executes command and query pipelines, exposes recognized contracts over HTTP, and generates TypeScript clients for them. Its packages also cover observable queries, validation, identity and tenancy, React integration, current-state persistence, OpenAPI, analyzers, and testing. Chronicle event sourcing and Cratis Components are optional integrations.
8
+ # Cratis Arc: CQRS framework for ASP.NET Core
6
9
 
7
- Arc reflects a broader Cratis conviction: application plumbing should not be the hard part. Commands, queries, validation, and authorization are written as plain, idiomatic .NET code, designed to reduce friction and boilerplate in service of productivity, quality, and reliability. Arc is part of one deliberately simple ecosystem — AI-friendly by design, with free [AI skills](https://github.com/Cratis/AI) for building with the stack.
10
+ Cratis Arc is an open-source (MIT) CQRS application framework for ASP.NET Core. CQRS separates requests to change something (commands) from requests to read it (queries). Arc exposes those contracts over HTTP, handles validation and authorization, and generates TypeScript clients for the frontend. It works with current-state storage or optional Cratis Chronicle event sourcing.
11
+
12
+ Build a feature as a vertical slice: keep its command, read model, query, frontend, and specs together. The backend defines the contracts; generated TypeScript proxies carry them into the frontend without a hand-written API client for those contracts. Observable queries let a screen subscribe to results as they change, with a configured observation source.
13
+
14
+ Choose the packages your feature needs. Arc includes identity and tenancy, React integration, MongoDB and Entity Framework Core adapters, OpenAPI, analyzers, and testing helpers. Chronicle event sourcing and Cratis Components are optional integrations. Free [AI skills](https://github.com/Cratis/AI) provide guidance for building with the stack.
8
15
 
9
16
  [![NuGet](https://img.shields.io/nuget/v/Cratis.Arc?logo=nuget)](https://www.nuget.org/packages/Cratis.Arc)
10
17
  [![NPM](https://img.shields.io/npm/v/@cratis/arc?label=@cratis/arc&logo=npm)](https://www.npmjs.com/package/@cratis/arc)
@@ -36,7 +43,7 @@ Arc reflects a broader Cratis conviction: application plumbing should not be the
36
43
  | Persistence integration | MongoDB and Entity Framework Core current-state adapters plus optional Chronicle-backed event-sourced behavior |
37
44
  | Evaluation and tooling | OpenAPI, runtime introspection, analyzers, source generators, command scenarios, proxy-generation checks, Vite helpers, and ESLint rules |
38
45
 
39
- Each row is a documented capability area, not a promise of compatibility with every package, host, provider, browser, or product version.
46
+ Use this table to find the capability you need, then check its package and documentation for your host, provider, browser, and versions. The rows do not establish compatibility for every combination.
40
47
 
41
48
  ## Choose a path
42
49
 
@@ -52,13 +59,13 @@ Arc documentation is organized around the job you need to complete:
52
59
  - [Add Chronicle event sourcing](https://github.com/Cratis/Arc/blob/main/Documentation/backend/csharp/chronicle/index.md) — events, projections, reducers, aggregates, reactors, concurrency, and Chronicle-specific testing.
53
60
  - [Inspect and verify the application boundary](https://github.com/Cratis/Arc/blob/main/Documentation/backend/csharp/introspection/index.md) — introspection, OpenAPI, analyzers, generated metadata, and command scenarios.
54
61
 
55
- The canonical Arc page remains the front door; product-owned documentation and source carry the detail.
62
+ For a first feature, start the host below, then follow the command and query guides. If you already have an application, choose the path for the part you want Arc to handle.
56
63
 
57
64
  ## Arc does not require event sourcing
58
65
 
59
- Arc.Core does not depend on Chronicle. Commands and queries can use current-state persistence or application services without an event log. Choose the persistence and integrations that fit each application boundary.
66
+ Arc.Core does not depend on Chronicle. A command can call an application service or write current state to a database; a query can read that state without an event log.
60
67
 
61
- The Chronicle integration is optional and supplies event-sourced behavior when configured. Arc retains its command, query, validation, authorization, and generated-contract boundary.
68
+ Choose the optional Chronicle integration when you want to record events and derive state from them. Arc still handles commands, queries, validation, authorization, and generated frontend contracts.
62
69
 
63
70
  [Chronicle](https://github.com/Cratis/Chronicle) is Cratis's storage-agnostic event-sourcing database and runtime — MIT licensed and free to use; see the [Chronicle documentation](https://www.cratis.io/chronicle/) for its own scope and setup.
64
71
 
@@ -161,17 +168,17 @@ Fix a new diagnostic by replacing the unsafe path rather than suppressing it. Th
161
168
 
162
169
  ## The Cratis ecosystem
163
170
 
164
- Arc is part of [Cratis](https://www.cratis.io) — free, MIT-licensed tools for building event-sourced and CQRS applications.
171
+ Arc is part of [Cratis](https://www.cratis.io) — a platform for building event-sourced and CQRS applications.
165
172
 
166
173
  - **[Chronicle](https://github.com/Cratis/Chronicle)** — event-sourcing database and runtime. Orleans-based kernel, pluggable storage (MongoDB default; PostgreSQL, SQL Server, SQLite, in-memory), language-agnostic gRPC contracts. [Docs](https://www.cratis.io/chronicle/)
167
- - **Chronicle clients** — first-class [.NET SDK](https://github.com/Cratis/Chronicle), plus [TypeScript](https://github.com/Cratis/Chronicle.TypeScript), [Kotlin/Java](https://github.com/Cratis/Chronicle.Kotlin), and [Elixir](https://github.com/Cratis/Chronicle.Elixir); [Python](https://github.com/Cratis/Chronicle.Python) coming soon (pre-alpha). AI agents connect through the [Chronicle MCP server](https://github.com/Cratis/Chronicle.Mcp).
174
+ - **Chronicle clients** — first-class [.NET SDK](https://github.com/Cratis/Chronicle), plus [TypeScript](https://github.com/Cratis/Chronicle.TypeScript), [Kotlin/Java](https://github.com/Cratis/Chronicle.Kotlin), and [Elixir](https://github.com/Cratis/Chronicle.Elixir); [Python](https://github.com/Cratis/Chronicle.Python) coming soon. AI agents connect through the [Chronicle MCP server](https://github.com/Cratis/Chronicle.Mcp).
168
175
  - **Arc** (this repository) — opinionated CQRS framework for ASP.NET Core with commands, queries, validation, authorization, and TypeScript proxy generation. Works without event sourcing. [Docs](https://www.cratis.io/arc/)
169
176
  - **[Components](https://github.com/Cratis/Components)** — React components aligned with Arc patterns. [Docs](https://www.cratis.io/components/)
170
177
  - **[CLI](https://github.com/Cratis/cli) + Workbench** — inspect and diagnose Chronicle from the terminal or the browser. [Docs](https://www.cratis.io/cli/)
171
- - **Model-first layer (experimental)** — Studio, [Screenplay](https://github.com/Cratis/Screenplay), [Stage](https://github.com/Cratis/Stage), [Scene](https://github.com/Cratis/Scene), [Prologue](https://github.com/Cratis/Prologue)
172
- - **Supporting** — [Fundamentals](https://github.com/Cratis/Fundamentals), [Specifications](https://github.com/Cratis/Specifications), [Synopsis](https://github.com/Cratis/Synopsis), [Lens](https://github.com/Cratis/Lens), [Narrator](https://github.com/Cratis/Narrator), and free [AI tooling](https://github.com/Cratis/AI) (preview); Ensemble coming soon (pre-release)
178
+ - **Model-first layer** — Studio, [Screenplay](https://github.com/Cratis/Screenplay), [Stage](https://github.com/Cratis/Stage), [Scene](https://github.com/Cratis/Scene), [Prologue](https://github.com/Cratis/Prologue)
179
+ - **Supporting** — [Fundamentals](https://github.com/Cratis/Fundamentals), [Specifications](https://github.com/Cratis/Specifications), [Synopsis](https://github.com/Cratis/Synopsis), [Lens](https://github.com/Cratis/Lens), [Narrator](https://github.com/Cratis/Narrator), and free [AI tooling](https://github.com/Cratis/AI); Ensemble coming soon
173
180
  - **[Samples](https://github.com/Cratis/Samples)** — runnable event sourcing and CQRS samples for the whole stack
174
181
 
175
- Everything Cratis publishes today is MIT licensed and free to use.
182
+ Arc is MIT licensed and free to use. Other Cratis products have their own licensing and access terms.
176
183
 
177
184
  Release notes and announcements: the [Cratis blog](https://blog.cratis.io).
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@cratis/arc",
4
- "version": "22.167.0",
4
+ "version": "22.168.1",
5
5
  "description": "TypeScript command, query, validation, identity, and messaging runtime for Cratis Arc — the CQRS application framework for ASP.NET Core — used by generated proxies.",
6
6
  "keywords": [
7
7
  "cratis",