{"id":15856526,"url":"https://github.com/powersync-ja/powersync-sqlite-core","last_synced_at":"2025-04-13T16:11:20.680Z","repository":{"id":191845032,"uuid":"684622761","full_name":"powersync-ja/powersync-sqlite-core","owner":"powersync-ja","description":"PowerSync SQLite Extension","archived":false,"fork":false,"pushed_at":"2025-04-09T15:43:03.000Z","size":3041,"stargazers_count":26,"open_issues_count":6,"forks_count":5,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-04-12T02:39:26.764Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/powersync-ja.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-29T14:13:58.000Z","updated_at":"2025-03-26T07:10:31.000Z","dependencies_parsed_at":"2024-01-29T13:47:07.267Z","dependency_job_id":"bc62b2bd-1ac1-4ed9-b5d6-2a352f06d915","html_url":"https://github.com/powersync-ja/powersync-sqlite-core","commit_stats":null,"previous_names":["journeyapps/powersync-sqlite-core","powersync-ja/powersync-sqlite-core"],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powersync-ja%2Fpowersync-sqlite-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powersync-ja%2Fpowersync-sqlite-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powersync-ja%2Fpowersync-sqlite-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/powersync-ja%2Fpowersync-sqlite-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/powersync-ja","download_url":"https://codeload.github.com/powersync-ja/powersync-sqlite-core/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248741198,"owners_count":21154255,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-05T20:01:30.938Z","updated_at":"2025-04-13T16:11:20.658Z","avatar_url":"https://github.com/powersync-ja.png","language":"C","readme":"# PowerSync SQLite Extension\n\nThis extension is used by PowerSync client SDKs.\n\nThe APIs here not currently stable, and may change in any release. The APIs are intended to be used by PowerSync SDKs only.\n\n# API\n\nPrimary APIs:\n\n```sql\n-- Load the extension\n-- Sets up functions and views, but does not touch the database itself.\n.load powersync\n\n-- Configure the schemas.\n-- Creates data tables, indexes and views.\nSELECT powersync_replace_schema('{\"tables\": [{\"name\": \"test\", \"columns\": [{\"name\": \"name\", \"type\": \"text\"}]}]}');\n\n```\n\nOther APIs:\n\n```sql\n-- Initialize the extension data (creates internal tables).\n-- Optional - also called as part of powersync_replace_schema().\n-- Only useful to ensure internal tables are configured without touching the schema.\nSELECT powersync_init();\n\n```\n\n# Building and running\n\nInitialize submodules recursively\n\n```\ngit submodule update --init --recursive\n```\n\n```sh\n# Build the shell\ncargo build -p powersync_sqlite\n./target/debug/powersync_sqlite test.db \"select powersync_rs_version()\"\n\n# Build the loadable extension\ncargo build -p powersync_loadable\nsqlite3 \":memory:\" \".load ./target/debug/libpowersync\" \"select powersync_rs_version()\" #This requires sqlite3 installed\n\n# Build the release loadable extension\ncargo build -p powersync_loadable --release\n\n# Build for iOS\n./tool/build_xcframework.sh\n```\n\n# Acknowledgements\n\nStructure of the SQLite extension using Rust is inspired by [cr-sqlite](https://github.com/vlcn-io/cr-sqlite/).\n","funding_links":[],"categories":["backup and replicate"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowersync-ja%2Fpowersync-sqlite-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpowersync-ja%2Fpowersync-sqlite-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowersync-ja%2Fpowersync-sqlite-core/lists"}