ArcadeDB has released a new set of native drivers for Python and TypeScript, designed to improve how applications interact with the database. Previously, developers had to rely on manual HTTP calls or adapt drivers from other databases, which limited functionality and ease of use. The new arcadedb-drivers repository provides four clients: HTTP and gRPC drivers for both Python and TypeScript/JavaScript. All are open source under the Apache 2.0 license and generated directly from ArcadeDB's published API contracts to maintain strict compatibility.
These drivers support client-server deployments and require Python 3.10+ or Node 20+ environments. The HTTP drivers are recommended for general use due to their broad compatibility and simplicity, while gRPC drivers offer streaming capabilities suited for large result sets or workloads demanding higher throughput.
A key limitation is that gRPC drivers cannot be used in browsers because ArcadeDB's server does not support gRPC-Web protocols. Browser-based applications should use the HTTP drivers instead.
The drivers provide consistent APIs for connecting, querying, and managing transactions. Queries specify the language (such as SQL, Cypher, or Gremlin), reflecting ArcadeDB's multi-model nature. Results are returned in envelopes that include metadata like whether the result set was truncated, helping developers handle partial responses appropriately.
Transactions are supported with idiomatic constructs: Python uses context managers, while TypeScript uses callbacks. Both ensure that commands within a transaction are properly grouped and committed or rolled back based on execution success.
The gRPC drivers enable streaming queries and inserts, reducing overhead for large data operations. They also enforce security by requiring encrypted channels when using password authentication.
A notable design feature is that all drivers are generated from ArcadeDB's OpenAPI and Protobuf contracts. This approach prevents silent incompatibilities by breaking builds if the server API changes without corresponding client updates. It also simplifies adding support for new languages in the future.
Currently at version 0.1.0, the drivers are under active development, and APIs may evolve before reaching a stable 1.0 release. ArcadeDB plans to expand language support beyond Python and TypeScript. Developers are encouraged to test the drivers with real workloads and contribute feedback through the project's GitHub repository.
This release marks a significant step in making ArcadeDB more accessible and reliable for developers, offering native, contract-driven clients that align closely with the database's capabilities and protocols.