Thriving Thriving Rust RS
โ†‘ 47 ?
carina carina-rs/carina

A strongly typed infrastructure management tool

HEALTH ? 97 / Healthy
// solo builder// hidden gem// release machine// under pressure awscarinainfrastructure-as-coderust ?

// readme

Carina

Carina represents the keel of Argo Navis: the structural backbone that quietly supports everything above it.

[!CAUTION] This is an experimental project. The DSL syntax, APIs, and features are subject to change without notice.

A strongly typed infrastructure management tool written in Rust.

Features

  • Custom DSL: Simple, expressive syntax for defining infrastructure
  • Effects as Values: Side effects are represented as data structures, not immediately executed
  • Strong Typing: Catch configuration errors during validation against provider schemas
  • Data Sources: Reference existing infrastructure without managing its lifecycle
  • Provider Architecture: Extensible provider system for multi-cloud support
  • Modules: Reusable infrastructure components with typed inputs/outputs
  • State Management: Remote state storage with locking (S3 backend)
  • LSP Support: Editor integration with completion, diagnostics, and syntax highlighting
  • Terraform-like Workflow: Familiar validate, plan, apply, destroy commands

Installation

git submodule update --init --recursive  # WIT definitions (carina-plugin-wit)
cargo buildโ€ฆ