Current section
Files
Jump to
Current section
Files
README.md
[](https://hex.pm/packages/sublimate) [](https://sublimate.hexdocs.pm/) [](https://codeberg.org/ArthurClemens/sublimate/actions)  [](https://codeberg.org/ArthurClemens/sublimate/src/branch/main/LICENSE)
Sublimate is an Elixir helper library that builds database trigger logic for
incremental updates to a destination table.
The data source can be a single source table or multiple joined tables.
Changes to any of the source tables are staged to a deltas table.
A merge function can then be applied - on demand or at scheduled intervals -
to copy the changes to the destination table.
Sublimate maintains the destination table incrementally as the source changes;
the consumer application/library defines what the destination contains and how
staged changes merge into it.
One example of a consuming library is [Refine ➚](https://hex.pm/packages/refine),
which keeps a facets table up to date with changes in source tables.