> For the complete documentation index, see [llms.txt](https://vector-privacy.gitbook.io/vector-privacy/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://vector-privacy.gitbook.io/vector-privacy/vector-sdk/basics/dependencies.md).

# Dependencies

Dependencies for Vector SDK

Vector SDK keeps its own dependency tree intentionally small. Lower-level concerns such as encryption, file uploads, and HTTP requests live inside `vector-core` and are not exposed as separate dependencies you need to manage directly.

* `vector-core`: The single source of truth for all protocol logic. The same engine that powers the Vector desktop and mobile apps, encryption, networking, and storage all live here.
* `nostr-sdk`: The Nostr SDK for Rust, providing the core functionality for interacting with the Nostr protocol.
* `tokio`: The asynchronous runtime the SDK and your bot run on.
* `serde` / `serde_json`: For serializing and deserializing data, including event payloads such as `BotEvent`.

### Optional Features

* `tor`: A pass-through feature that builds `vector-core` with embedded Tor (Arti) support. Off by default to keep the dependency tree light for bots that don't need it. Enable it with the `tor` feature flag and call `.tor()` on the builder to route your bot's traffic through Tor.

```toml
vector_sdk = { version = "0.3", features = ["tor"] }
```
