Skip to content

SDKs & Tools

Nirvana Labs provides official SDKs, CLI tools, and infrastructure-as-code integrations to help you interact with the Nirvana API programmatically.

SDKPackageRepository
TypeScript@nirvana-labs/nirvanaGitHub
Gonirvana-goGitHub
ToolPackageRepository
Terraformnirvana-labs/nirvanaGitHub
CLI-GitHub
MCP@nirvana-labs/nirvana-mcpGitHub
# Declare the provider and version
terraform {
required_providers {
nirvana = {
source = "nirvana-labs/nirvana"
version = "~> 1.24.2"
}
}
}
# Initialize the provider
provider "nirvana" {
api_key = "My API Key" # or set NIRVANA_LABS_API_KEY env variable
}
# Configure a resource
resource "nirvana_compute_vm" "example_compute_vm" {
boot_volume = {
size = 100
type = "nvme"
tags = ["production", "ethereum"]
}
cpu_config = {
vcpu = 2
}
memory_config = {
size = 2
}
name = "my-vm"
os_image_name = "ubuntu-noble-2025-10-01"
public_ip_enabled = true
region = "us-wdc-1"
ssh_key = {
public_key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDBIASkmwNiLcdlW6927Zjt1Hf7Kw/PpEZ4Zm+wU9wn2"
}
subnet_id = "123e4567-e89b-12d3-a456-426614174000"
data_volumes = [{
name = "my-data-volume"
size = 100
type = "nvme"
tags = ["production", "ethereum"]
}]
tags = ["production", "ethereum"]
}