https://github.com/bridgerust/bridgerust
High-performance infrastructure libraries built in Rust, with seamless bindings for Python, Node.js, and WebAssembly.
https://github.com/bridgerust/bridgerust
ai ai-agent bindings chromadb embeddings lancedb machine-learning napi-rs nodejs orm pinecode pyo3 python qdrant rag rust rust-bindings semantic-search vector-database weaviate
Last synced: 3 months ago
JSON representation
High-performance infrastructure libraries built in Rust, with seamless bindings for Python, Node.js, and WebAssembly.
- Host: GitHub
- URL: https://github.com/bridgerust/bridgerust
- Owner: bridgerust
- Created: 2025-12-25T12:02:29.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-02-23T11:30:06.000Z (3 months ago)
- Last Synced: 2026-02-23T18:49:03.647Z (3 months ago)
- Topics: ai, ai-agent, bindings, chromadb, embeddings, lancedb, machine-learning, napi-rs, nodejs, orm, pinecode, pyo3, python, qdrant, rag, rust, rust-bindings, semantic-search, vector-database, weaviate
- Language: Rust
- Homepage: https://bridgerust.dev
- Size: 1.72 MB
- Stars: 21
- Watchers: 1
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: docs/CONTRIBUTING.md
Awesome Lists containing this project
README
# BridgeRust
[](https://github.com/bridgerust/bridgerust)
[](LICENSE)
[](https://discord.gg/ZvNAeaWN)
[)](https://pypi.org/project/embex)
[](https://www.npmjs.com/package/@bridgerust/embex)
[)](https://pypi.org/project/bridgetime)
[](https://www.npmjs.com/package/@bridgerust/bridgetime)
[Embex](#embex--universal-vector-database-client) - [BridgeTime](#bridgetime--datetime-toolkit) - [BridgeRust Framework](#bridgerust-framework) - [Discord](https://discord.gg/ZvNAeaWN) - [Contributing](docs/CONTRIBUTING.md)
BridgeRust is a monorepo shipping two AI-infrastructure products — **Embex** and **BridgeTime** — and the **BridgeRust** framework that powers them: a unified system for building cross-language Rust libraries deployable to Python and Node.js.
## What's in this repo?
| Package | Ecosystem | Purpose | Install |
|:--------|:----------|:--------|:--------|
| **embex** | Python | Universal vector DB client | `pip install embex` |
| **@bridgerust/embex** | Node.js | Universal vector DB client | `npm install @bridgerust/embex` |
| **bridgetime** | Python | Rust-powered datetime toolkit | `pip install bridgetime` |
| **@bridgerust/bridgetime** | Node.js | Rust-powered datetime toolkit | `npm install @bridgerust/bridgetime` |
| **bridgeq** | Python (preview) | Rust-powered queue toolkit | `pip install bridgeq` |
| **@bridgerust/bridgeq** | Node.js (preview) | Rust-powered queue toolkit | `npm install @bridgerust/bridgeq` |
| **bridgerust** | Rust crate | Cross-language binding framework | `cargo add bridgerust` |
| **bridgerust-macros** | Rust crate | `#[export]` proc-macros | re-exported by `bridgerust` |
| **bridge** | CLI | Scaffold new BridgeRust libraries | `cargo install bridge` |
| **embex-cli** | CLI | Manage Embex collections from the terminal | `cargo install embex-cli` |
| **bridgeq** | Rust crate (experimental) | Queue core for upcoming cross-language task queue | workspace crate |
| **bridgeq-redis** | Rust crate (alpha) | Durable Redis adapter for bridgeq | workspace crate |
| **bridgeq-postgres** | Rust crate (alpha) | Durable PostgreSQL adapter for bridgeq | workspace crate |
---
## Architecture
```
crates/core (SIMD vector utilities)
└── crates/bridgerust-macros (#[export] proc-macros)
└── crates/bridgerust (cross-language framework)
├── crates/embex/** (vector DB client — 7 adapters)
│ ├── bindings/python/embex → PyPI: embex
│ └── bindings/node/@bridgerust/embex → npm: @bridgerust/embex
└── crates/bridgetime/bridge (datetime toolkit)
├── bindings/python/bridgetime → PyPI: bridgetime
└── bindings/node/@bridgerust/bridgetime → npm: @bridgerust/bridgetime
```
---
## Products
### Embex — Universal Vector Database Client
[](https://pypi.org/project/embex/)
[](https://www.npmjs.com/package/@bridgerust/embex)
One API. Seven databases. 4× faster than native clients.
Embex abstracts vector database fragmentation into a single, production-ready API. Switch from LanceDB to Qdrant to Pinecone by changing one config line — no code rewrites. Built on a Rust core with SIMD acceleration.
```bash
pip install embex # Python
npm install @bridgerust/embex # Node.js
```
Supported providers: **LanceDB** • **Qdrant** • **Pinecone** • **Chroma** • **PgVector** • **Milvus** • **Weaviate**
→ [Full documentation](crates/embex/README.md) • [Docs site](https://bridgerust.dev/embex) • [Quick Start](https://bridgerust.dev/embex/quickstart)
---
### BridgeTime — Datetime Toolkit
[)](https://pypi.org/project/bridgetime)
[](https://www.npmjs.com/package/@bridgerust/bridgetime)
A Rust-powered Day.js/Moment-style datetime toolkit for Python and Node.js. Same familiar API, backed by a fast Rust core.
```bash
pip install bridgetime # Python
npm install @bridgerust/bridgetime # Node.js
```
Sources: [`crates/bridgetime/bridge`](crates/bridgetime/bridge) • [`bindings/python/bridgetime`](bindings/python/bridgetime) • [`bindings/node/@bridgerust/bridgetime`](bindings/node/@bridgerust/bridgetime)
→ [Full documentation](docs/bridgetime.md) • [Python README](bindings/python/bridgetime/README.md) • [Node README](bindings/node/@bridgerust/bridgetime/README.md)
---
## BridgeRust Framework
The **BridgeRust** framework is the foundation both products are built on. It eliminates the complexity of managing separate PyO3 (Python) and napi-rs (Node.js) bindings by providing a single `#[export]` macro.
→ [Framework README](crates/bridgerust/README.md) • [Getting Started](docs/getting-started-bridgerust.md)
### Packages & Status
**Framework**
| Crate | Source | Version | Downloads | Docs |
|:------|:-------|:--------|:----------|:-----|
| **bridgerust** | [crates/bridgerust](crates/bridgerust) | [](https://crates.io/crates/bridgerust) | [](https://crates.io/crates/bridgerust) | [](https://bridgerust.dev/bridgerust/introduction) |
| **bridgerust-macros** | [crates/bridgerust-macros](crates/bridgerust-macros) | [](https://crates.io/crates/bridgerust-macros) | [](https://crates.io/crates/bridgerust-macros) | [](https://docs.rs/bridgerust-macros) |
| **bridge-core** | [crates/core](crates/core) | [](https://crates.io/crates/bridge-core) | [](https://crates.io/crates/bridge-core) | [](https://docs.rs/bridge-core) |
**Language bindings**
| Package | Ecosystem | Source | Version |
|:--------|:----------|:-------|:--------|
| **embex** | Python (PyPI) | [bindings/python/embex](bindings/python/embex) | [](https://pypi.org/project/embex) |
| **@bridgerust/embex** | Node.js (npm) | [bindings/node/@bridgerust/embex](bindings/node/@bridgerust/embex) | [](https://www.npmjs.com/package/@bridgerust/embex) |
| **bridgetime** | Python (PyPI) | [bindings/python/bridgetime](bindings/python/bridgetime) | [](https://pypi.org/project/bridgetime) |
| **@bridgerust/bridgetime** | Node.js (npm) | [bindings/node/@bridgerust/bridgetime](bindings/node/@bridgerust/bridgetime) | [](https://www.npmjs.com/package/@bridgerust/bridgetime) |
**CLI tools**
| Tool | Source | Version | Description |
|:-----|:-------|:--------|:------------|
| **bridge** | [cli/bridge](cli/bridge) | [](https://crates.io/crates/bridge) | Scaffold new BridgeRust libraries |
| **embex-cli** | [cli/embex-cli](cli/embex-cli) | [](https://crates.io/crates/embex-cli) | Manage Embex collections from the terminal |
### Framework Documentation
- [Quick Reference](docs/QUICK_REFERENCE.md)
- [Getting Started Guide](docs/getting-started-bridgerust.md)
- [Migration Guide](docs/MIGRATION_GUIDE.md)
- [Examples](docs/EXAMPLES.md)
- [Troubleshooting](docs/TROUBLESHOOTING.md)
- [New Libraries Track](docs/new_libraries.md)
- [Comprehensive Example](examples/bridgerust-example/)
---
## Contributing
See [CONTRIBUTING.md](docs/CONTRIBUTING.md) for development setup and guidelines.
## License
MIT OR Apache-2.0
[](LICENSE)