# `Arc.Notifier`
[🔗](https://github.com/Cratis/Arc.Elixir/blob/main/lib/arc/notifier.ex#L4)

Tells observable queries to run again.

Queries declared with `@observe watch: [Model]` re-run when Chronicle reports a change to
that read model. For anything else, declare `@observe topics: ["authors"]` and call
`notify/2` when the data changes:

    Arc.Notifier.notify(MyApp.Arc, "authors")

Subscriptions are processes registered in the application's `Registry`, so notification works
across processes on a node. Cluster-wide fan-out is the application's choice: broadcast with
`Phoenix.PubSub` (or `:pg`) and call `notify/2` in the receiving handler on each node.

# `notify`

```elixir
@spec notify(module(), term()) :: :ok
```

Notifies every observable query subscribed to `topic` on this node.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
