Home
Softono
cdk-terrain

cdk-terrain

Open source MPL-2.0 TypeScript
204
Stars
19
Forks
61
Issues
5
Watchers
1 week
Last Commit

About cdk-terrain

Define infrastructure resources using programming constructs and provision them using OpenTofu/Terraform

Platforms

Web Self-hosted

Languages

TypeScript

CDK Terrain

[!IMPORTANT] CDK Terrain migration guides available at migrating to v0.23 Refer to the FAQ for clarifications about this fork

CDK Terrain (CDKTN) is a community fork of the Cloud Development Kit for Terraform (CDKTF). CDKTF/CDKTN allows you to use familiar programming languages to define cloud infrastructure and provision it through OpenTofu or Terraform. This gives you access to the entire OpenTofu/Terraform ecosystem without learning HashiCorp Configuration Language (HCL) and lets you leverage the power of your existing toolchain for testing, dependency management, etc.

We currently support TypeScript, Python, Java, C# and Go.

terraform platform

CDKTN includes two packages:

  • cdktn-cli - A CLI that allows users to run commands to initialize, import, and synthesize CDK Terrain applications.
  • cdktn - A library for defining Terraform resources using programming constructs.

Get Started

Hands-on: Try the tutorials in the Tutorials section.

Documentation

Refer to the documentation for more detail about how to build and manage CDKTN applications, including:

  • Application Architecture: Learn the tools and processes that CDKTN uses to leverage the Terraform ecosystem and convert code into Terraform configuration files. It also explains the major components of a CDKTN application and how those pieces fit together.

  • Project Setup: Learn how to create a new CDKTN project from a pre-built or custom template. Also learn how to convert an existing HCL project into a CDKTN application.

  • Unit Tests: Learn how to test your application in Typescript with jest.

  • Examples: Reference example projects in every supported language and review explanatory videos and other resources.

Community

The development team would love your feedback to help guide the project.

Build

For prerequisites, refer to the following.

Clone the project repository.

git clone https://github.com/open-constructs/cdk-terrain.git

Download dependencies.

cd cdk-terrain/
pnpm install

Build the project and packages.

pnpm build