# Developing in Rust

Rust gives you two supported ways to build on Autonomi.

## Choose how you'll work in Rust

### Rust through the SDK daemon

Use the Rust SDK when you want Rust code to talk to `antd` just like the other SDK languages do.

Choose the Rust SDK if you want:

* the same daemon-based model used by Python, Node.js / TypeScript, Go, and the other SDKs
* REST or gRPC access through a stable local gateway
* a Rust app that fits into the broader SDK workflow

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

### Native Rust with ant-core

Use `ant-core` when you want direct, daemon-free Rust access to networking, uploads, and payment flows.

Choose native Rust with ant-core if you want:

* direct control over the network client in Rust
* no daemon process between your code and the network
* access to native Rust types, local devnet helpers, and direct client tuning such as loopback and timeout control

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

## How the two Rust paths differ

|                    | Rust SDK                           | `ant-core`           |
| ------------------ | ---------------------------------- | -------------------- |
| Interface model    | daemon-based                       | direct Rust library  |
| Network access     | through `antd`                     | direct               |
| Good fit           | SDK-style app development          | native Rust control  |
| Closest equivalent | Python / Node.js / TypeScript SDKs | no daemon equivalent |

## Upstream sources

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

## Related pages

* [Build Directly in Rust](/developers/developing-in-rust/build-directly-in-rust.md)
* [Rust SDK](/developers/sdk/install/reference/language-bindings/rust.md)
* [Rust Library Reference](/developers/developing-in-rust/library-reference.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.autonomi.com/developers/developing-in-rust/rust.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
