OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Starknet.go

Starknet.go is an open-source Go library for building backends and WebAssembly frontends that interact with Starknet. It provides abstractions for Starknet RPC, account management and common wallet operations.

Independent OpenViST project profile, based on linked sources.

Starknet.go — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Consider it when you need a Go library for Starknet interactions or are examining an existing integration. The repository says it is no longer maintained and remains available in read-only mode, so factor that status into any adoption decision.

Who it is for

  • Go developers building backend software that interacts with Starknet.
  • Developers creating WebAssembly frontends with Starknet wallet operations.
  • Teams reviewing or maintaining software that already uses the library.

Documented uses

  • Call Starknet contracts and retrieve chain data through RPC methods.
  • Manage accounts, including deploying an account contract.
  • Submit invoke, declare and deploy-account transactions.
  • Use examples for paymaster interactions, typed-data signing and verification, and WebSocket subscriptions.
Before you choose

Requirements & limits

The public GitHub repository is available under the MIT license. Its README says the code remains available in read-only mode; it does not describe a hosted service or account requirement.

  • The README identifies Starknet RPC v0.9.0 as the implemented specification.
  • The listed examples include testnet contract calls, account deployment, transactions, paymaster use, typed data, and WebSocket subscriptions.
  • The repository states that the project is no longer maintained and is intended to be archived.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Create a Go application that reads Starknet chain data

Set up and run a basic application that connects to a Starknet RPC endpoint and retrieves the chain ID and latest block number.

Before you start

  • Go 1.23 or higher, as listed in the guide prerequisites.
  • A Starknet RPC endpoint.
  • Basic familiarity with Go.

Steps

  1. Create a project directory and initialize a Go module with the command below.

    Documented command
    go mod init my-starknet-app
  2. Add the library and environment-file dependency with the command below and the command below, then run the command below.

    Documented command
    go get github.com/NethermindEth/starknet.go
    Documented command
    go get github.com/joho/godotenv
    Documented command
    go mod tidy
  3. Create a .env file in the project root containing STARKNET_RPC_URL=. Use an endpoint whose JSON-RPC spec version matches the library version.

  4. Create main.go using the guide’s example: load .env, read STARKNET_RPC_URL, create a provider with rpc.NewProvider, then call ChainID and BlockNumber and print the results.

  5. Run the program with the command below.

    Documented command
    go run main.go

Expected outcome

The example connects to Starknet and prints the chain ID and latest block number; the guide illustrates output including `SN_SEPOLIA`.

Guide limitations

  • An accessible, correctly configured RPC endpoint is needed; network calls can fail, so handle errors.
  • The repository README says the project is no longer maintained and will be archived; its code is available in read-only mode for reference.
  • The README lists RPC v0.9.0 support, while the documentation page describes v0.8.0 coverage; verify the required spec against the library version and endpoint.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
13 October 2026
Original website title
NethermindEth/starknet.go · Official homepage title · retained in its source language