> ## Documentation Index
> Fetch the complete documentation index at: https://stratasync.blode.md/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# @stratasync/core

## Installation

```bash
npm install @stratasync/core
```

`@stratasync/core` has no peer dependencies. It bundles `mobx` as a regular dependency.

## Package exports

Import all public APIs from the package entry point:

```ts
import {
  // Models
  Model,
  Collection,

  // Decorators
  ClientModel,
  Property,
  Reference,
  ManyToOne,
  OneToMany,
  BackReference,

  // Schema
  ModelRegistry,
  computeSchemaHash,

  // Transactions
  createInsertTransaction,
  createUpdateTransaction,
  createDeleteTransaction,
  createUndoTransaction,
  serializeTransaction,
  deserializeTransaction,

  // Sync
  applyDeltas,
  createBatchedApplier,
  rebaseTransactions,

  // Utils
  generateUUID,
  generateModelId,
  getOrCreateClientId,
} from "@stratasync/core";
```

Serialization helpers, ephemeral properties, reference collections, and internal utilities are also available from the same entry point.

## Architecture role

Sits at the bottom of the dependency graph. Defines the data model, schema, and transaction format that all higher-level packages consume.

```
core
  ^-- y-doc
  ^-- client
        ^-- react
              ^-- next
```

Framework-agnostic: works in Node.js, Deno, or any ES module runtime.