{"id":26062047,"url":"https://github.com/elixir-explorer/adbc","last_synced_at":"2025-04-11T10:58:20.746Z","repository":{"id":167639892,"uuid":"643255043","full_name":"elixir-explorer/adbc","owner":"elixir-explorer","description":"Apache Arrow ADBC bindings for Elixir","archived":false,"fork":false,"pushed_at":"2024-04-18T07:43:26.000Z","size":6632,"stargazers_count":36,"open_issues_count":4,"forks_count":14,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-04-23T14:13:24.142Z","etag":null,"topics":["apache-arrow","database","elixir","postgresql","snowflake","sqlite"],"latest_commit_sha":null,"homepage":"https://arrow.apache.org/adbc/","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/elixir-explorer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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-05-20T15:27:49.000Z","updated_at":"2024-05-03T09:55:39.378Z","dependencies_parsed_at":null,"dependency_job_id":"e8f71159-ffd0-4678-9926-34380f7e42ae","html_url":"https://github.com/elixir-explorer/adbc","commit_stats":null,"previous_names":["cocoa-xu/adbc","elixir-explorer/adbc"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-explorer%2Fadbc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-explorer%2Fadbc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-explorer%2Fadbc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-explorer%2Fadbc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-explorer","download_url":"https://codeload.github.com/elixir-explorer/adbc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248381678,"owners_count":21094524,"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":["apache-arrow","database","elixir","postgresql","snowflake","sqlite"],"created_at":"2025-03-08T15:49:21.098Z","updated_at":"2025-04-11T10:58:20.729Z","avatar_url":"https://github.com/elixir-explorer.png","language":"C++","readme":"# Adbc\n\n[![Hex.pm](https://img.shields.io/hexpm/v/adbc.svg?style=flat\u0026color=blue)](https://hex.pm/packages/adbc)\n\nElixir bindings for Arrow Database Connectivity (ADBC).\n\nAdbc provides a standard database interface using the\nApache Arrow format. See [`Adbc`](https://hexdocs.pm/adbc/Adbc.html)\ndocumentation for setting it up and the available drivers.\n\n## Quick run-through\n\nFirst, add `:adbc` as a dependency in your `mix.exs`:\n\n```elixir\n{:adbc, \"~\u003e 0.6\"}\n```\n\nNow, in your config/config.exs, configure the drivers you\nare going to use. Let's use sqlite3 as an example\n(see [`Adbc`](https://hexdocs.pm/adbc/Adbc.html) for all\nsupported drivers):\n\n```elixir\nconfig :adbc, :drivers, [:sqlite]\n```\n\nIf you are using a notebook or scripting, you can also use\n`Adbc.download_driver!/1` to dynamically download one.\n\nThen start the database and the relevant connection processes\nin your supervision tree:\n\n```elixir\nchildren = [\n  {Adbc.Database,\n   driver: :sqlite,\n   process_options: [name: MyApp.DB]},\n  {Adbc.Connection,\n   database: MyApp.DB,\n   process_options: [name: MyApp.Conn]}\n]\n\nSupervisor.start_link(children, strategy: :one_for_one)\n```\n\nIn a notebook, the above would look like this:\n\n```elixir\n{:ok, db} = Kino.start_child({Adbc.Database, driver: :sqlite})\n{:ok, conn} = Kino.start_child({Adbc.Connection, database: db})\n```\n\nAnd now you can make queries with:\n\n```elixir\n# For named connections\n{:ok, _} = Adbc.Connection.query(MyApp.Conn, \"SELECT 123\")\n\n# When using the conn PID directly\n{:ok, _} = Adbc.Connection.query(conn, \"SELECT 123\")\n```\n\n## Precompiled artifacts\n\nThis project ships with precompiled artifacts. You can force the artifacts to be built by setting `ADBC_BUILD=1` or via the following application configuration:\n\n```elixir\nconfig :elixir_make, :force_build, adbc: true\n```\n\n## License\n\nCopyright 2023 Cocoa Xu, José Valim\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-explorer%2Fadbc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felixir-explorer%2Fadbc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-explorer%2Fadbc/lists"}