---
title: SDK Overview
description: Choose the right Thru SDK for C, Rust, and web development.
source_url:
  html: https://thru.org/docs/program-development/developer-resources/
  md: https://thru.org/docs/program-development/developer-resources.md
---

# SDK Overview

Use this section when you need to choose the right Thru SDK surface for your project.

Source code can be found on [GitHub](https://github.com/Unto-Labs/thru).

- [C SDK](https://thru.org/docs/sdks/c.md): Build low-level Thru programs in C with the DevKit and program development guides.
- [Rust SDKs](https://thru.org/docs/sdks/rust.md): Integrate Thru into Rust services and tooling with typed crates and client libraries.
- [Web SDKs](https://thru.org/docs/sdks/web.md): Build browser and React applications on top of Thru RPC, wallet, and UI packages.

## Pick a path

- Choose [C SDK](https://thru.org/docs/sdks/c.md) when you are writing on-chain programs and want the lowest-level developer workflow.
- Choose [Rust SDKs](https://thru.org/docs/sdks/rust.md) when you are building typed backend services, automation, or Rust-based tools.
- Choose [Web SDKs](https://thru.org/docs/sdks/web.md) when you are building browser apps, React interfaces, or wallet-connected experiences.

Need command reference instead of a package guide? Use the [CLI reference](https://thru.org/docs/cli-reference/overview.md).

## Common entry points

- [Set Up Thru DevKit](https://thru.org/docs/program-development/setting-up-thru-devkit.md)
- [Build a C Program](https://thru.org/docs/program-development/building-a-c-program.md)
- [CLI Overview](https://thru.org/docs/cli-reference/overview.md)
- [gRPC API](https://thru.org/docs/api-ref/grpc/overview.md)

## Rust

### [`thru-base`](https://crates.io/crates/thru-base)

Core Rust primitives for Thru, including transaction builders, proof utilities, cryptographic helpers, and shared data models.

### [`thru-grpc-client`](https://crates.io/crates/thru-grpc-client)

Generated gRPC bindings for the Thru RPC services using tonic and prost, giving you strongly typed clients for every public endpoint.

### [`thru`](https://crates.io/crates/thru)

The command-line interface for interacting with Thru nodes; it reuses the Rust crates above to query network data, manage keys, and upload programs.
