[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [local‑first/Evolu](https://evolu.dev/docs/api-reference/common/local-first/Evolu) › EvoluErrorDep

Defined in: [packages/common/src/local-first/Evolu.ts:757](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/local-first/Evolu.ts#L757)

## Properties

<a id="evoluerror"></a>

### evoluError

```ts
readonly evoluError: ReadonlyStore<
  | EvoluError
| null>;
```

Defined in: [packages/common/src/local-first/Evolu.ts:812](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/local-first/Evolu.ts#L812)

[ReadonlyStore](https://evolu.dev/docs/api-reference/common/Store/interfaces/ReadonlyStore) of [EvoluError](https://evolu.dev/docs/api-reference/common/local-first/Error/type-aliases/EvoluError) shared by all [Evolu](https://evolu.dev/docs/api-reference/common/local-first/Evolu/interfaces/Evolu)
instances created from the same [createEvoluDeps](https://evolu.dev/docs/api-reference/common/local-first/Evolu/functions/createEvoluDeps) result.

Subscribe once to show user-facing error messages across all instances.

### Example

```ts
import {
  assertEqual,
  createStore,
  Millis,
  type EvoluError,
} from "@evolu/common";

// Stand-in for run.deps.evoluError from createEvoluDeps.
using evoluError = createStore<EvoluError | null>(null);
const deps = { evoluError } satisfies EvoluErrorDep;
let displayedMessage = "";
const showMessage = (message: string) => {
  displayedMessage = message;
};

deps.evoluError.subscribe(() => {
  const error = deps.evoluError.get();
  if (!error) return;

  // oxlint-disable-next-line typescript/switch-exhaustiveness-check -- The default intentionally handles every other EvoluError.
  switch (error.type) {
    case "TimestampDriftError":
      // Show guidance specific to the detected error.
      showMessage("Your system clock appears incorrect. Please fix it.");
      break;
    default:
      // Show a generic user message for other operational errors.
      showMessage("Something went wrong. Please try again.");
  }
});

deps.evoluError.set({
  type: "TimestampDriftError",
  next: Millis.orThrow(360000),
  now: Millis.orThrow(0),
});
assertEqual(
  displayedMessage,
  "Your system clock appears incorrect. Please fix it.",
);
```