Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion client-sdks/advanced/sqlite-extensions.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
---

SQLite can be extended with [Run-Time Loadable Extensions](https://sqlite.org/loadext.html) contributing
new functions, virtual tables, full-text search tokenizers and more. Since PowerSync SDKs are built on top

Check warning on line 7 in client-sdks/advanced/sqlite-extensions.mdx

View check run for this annotation

Mintlify / Mintlify Validation (powersync) - vale-spellcheck

client-sdks/advanced/sqlite-extensions.mdx#L7

Did you really mean 'tokenizers'?
of SQLite connections, most SQLite extensions also work with PowerSync.

Including custom SQLite extensions in your app is possible, but requires SDK and platform-specific setup steps.
Expand All @@ -30,7 +30,7 @@
<Warning>This is an advanced topic, and not directly supported by PowerSync.</Warning>

The `sqlite3` package provides [instructions](https://github.com/simolus3/sqlite3.dart/tree/main/sqlite3_wasm_build)
and cmake build scripts to compile `sqlite3.wasm`.

Check warning on line 33 in client-sdks/advanced/sqlite-extensions.mdx

View check run for this annotation

Mintlify / Mintlify Validation (powersync) - vale-spellcheck

client-sdks/advanced/sqlite-extensions.mdx#L33

Did you really mean 'cmake'?

The PowerSync Dart SDK [adopts that](https://github.com/powersync-ja/powersync.dart/tree/main/packages/sqlite3_wasm_build)
with [a patch](https://github.com/powersync-ja/powersync.dart/blob/main/packages/sqlite3_wasm_build/patches/0001-Link-PowerSync-core-extension.patch)
Expand Down Expand Up @@ -153,7 +153,12 @@

## .Net

The PowerSync .NET SDK has builtin support for loading extensions through the `MDSQLiteOptions.Extensions` field.
The PowerSync .NET SDK has builtin support for loading custom extensions by setting the `MDSQLiteOptions.Extensions` field to an array of `SqliteExtension` objects.

You can also disable loading the [core PowerSync SQLite extension](https://github.com/powersync-ja/powersync-sqlite-core) by setting `MDSQLiteOptions.LoadPowerSyncExtension` to false. When doing so, you must ensure that one of the extensions passed in `MDSQLiteOptions.Extensions` contains a build of the PowerSync core extension.

<Warning>Running the PowerSync .NET SDK without the core extension or with an outdated version of the core extension is not supported.</Warning>

It is your responsibility to build and bundle extensions you want to use with your app so that they can be loaded.

## Rust and Tauri
Expand Down