Skip to content

Documentation

TerraDart lets you write your infrastructure and your app in one typed Dart codebase. A Stack synthesizes standard Terraform JSON for Google Cloud, AWS, Cloudflare and Appwrite, and the values your app needs reach it as a generated Dart file instead of copied strings.

Guides track the 0.35.x line on pub.dev. Every Dart snippet on this site compiles against it in CI.

Pick the guide for where you start. Each is one path you can paste, from dart pub global activate terradart_cli to an apply, and none asks you to install Terraform.

  • Writing arguments — which form an argument takes: a literal, a ref, an enum member, a variant, a variable, a secret
  • Environments — dev, staging and prod as a Dart enum: each with its own project and state, and its own define file for the client
  • Outputs in client apps — build a Flutter, web or CLI client with apply-time values, typed, from the define file terradart apply writes
  • Migrating from HCL — terradart migrate brings an existing Terraform tree over with a plan that reports No changes
  • Google Cloud — terradart_google and terradart_google_beta
  • AWS — terradart_aws: Lambda, ECS Express Mode, Flutter Web on S3 + CloudFront
  • Cloudflare — terradart_cloudflare: the DNS and edge in front of your app
  • Appwrite — terradart_appwrite: the backend of a Flutter app

terradart_time adds TimeSleep, the propagation wait any Stack can use, and everything builds on terradart_core.

  • The terradart command — terradart synth, validate, plan, apply, destroy, outputs and migrate, environments declared in Dart, and managed OpenTofu
  • Coverage — every factory of every provider package, its barrel, and the examples that use it
  • API reference — the dartdoc of every package on pub.dev
  • llms.txt — these docs, condensed for LLMs
  • How TerraDart works — the loop from Stack to *.tf.json to OpenTofu or Terraform, synth issues, and the constants and outputs that cross into your app
  • How TerraDart is built — the generation pipeline and verification harness behind the factories; the maintainer CLI is terradart_codegen (terradart-codegen wrap)