> For the complete documentation index, see [llms.txt](https://docs.autonomi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.autonomi.com/developers/direct-rust/rust.md).

# Direct Rust

To store and retrieve data in Rust, use a client library that calls the local `antd` service or the `ant-core` library that connects directly to the Autonomi Network. Both libraries run in your application; the difference is which process handles the network connection.

## Choose how you'll work in Rust

### Rust client library for antd

Use `antd-client` when you want a separate background service, `antd`, to handle network access. Your application calls the Rust library, which sends requests to `antd` over REST or gRPC.

The Rust client library is included in the `ant-sdk v0.12.1` release source but is not published on crates.io. Use it only from a checkout pinned to the `ant-sdk v0.12.1` release commit. If you need an obtainable crates.io dependency, choose Direct Rust with `ant-core 0.10.0`.

Choose `antd-client` if you want:

* to keep the network connection in a separate local service
* to use the same REST or gRPC service as the other [antd client libraries](/developers/sdk/reference/language-bindings/overview.md)

Not every SDK library uses `antd`: the [native libraries for Python, Node.js, and .NET](/developers/sdk/install/native.md) connect directly from your application.

See [Rust client library](/developers/sdk/reference/language-bindings/rust.md).

### Direct Rust with ant-core

Use `ant-core` to handle networking, uploads, and payment flows within your Rust application, without a separate `antd` service.

Choose Direct Rust with `ant-core` if you want:

* direct control over the Autonomi Network client in Rust
* no `antd` process between your code and the Autonomi Network
* access to Rust types, local devnet helpers, and client tuning such as loopback and timeout control

See [Build with Direct Rust](/developers/direct-rust/build-directly-in-rust.md) and [Rust Library Reference](/developers/direct-rust/library-reference.md).

## How the two Rust paths differ

|                | `antd-client`                                | `ant-core`                                     |
| -------------- | -------------------------------------------- | ---------------------------------------------- |
| Runs in        | your application                             | your application                               |
| Network access | through `antd`                               | direct                                         |
| Good fit       | network access managed by a separate service | network access managed within your application |
| Installation   | Pinned `ant-sdk v0.12.1` source checkout     | `ant-core 0.10.0` from crates.io               |

## Upstream sources

* [ant-sdk](https://github.com/WithAutonomi/ant-sdk)
* [ant-client](https://github.com/WithAutonomi/ant-client)

## Related pages

* [Build with Direct Rust](/developers/direct-rust/build-directly-in-rust.md)
* [Rust client library](/developers/sdk/reference/language-bindings/rust.md)
* [Rust Library Reference](/developers/direct-rust/library-reference.md)
