v1.0 — production ready

infrastructure
that just works

provision cloud resources with type-safe typescript. get instant feedback, full IDE support, and deployments that complete in seconds.

plans in <1sparallel by defaultcompile-time validation
CLI coming soon
infra.ts
// define infrastructure with full type safety
import { aws, defineInfrastructure } from '@coordin8/dsl';

// autocomplete for every aws resource
const bucket = aws.s3.bucket('assets', {
  bucket: 'myapp-assets-prod',
  versioning: { enabled: true },
  tags: { Environment: 'production' }
});

// reference other resources with type safety
const lambda = aws.lambda.function_({
  functionName: 'myapp-api',
  runtime: 'nodejs20.x',
  handler: 'index.handler',
  code: { s3Bucket: bucket.bucketId } // ^ typed reference
});

export default defineInfrastructure((config) => {
  config
    .addResource(bucket)
    .addResource(lambda);
});
why coordin8

infrastructure, reimagined

we believe infrastructure code should have the same developer experience as application code. type safety, autocomplete, instant feedback — without the complexity.

01

sub-second planning

dependency graphs resolve in milliseconds. our go-powered engine builds execution plans in under a second, parallel by design. no more waiting for terraform to iterate.

<1splan time
02

types catch bugs early

catch misconfigurations before deployment. invalid s3 bucket names, missing iam permissions, incorrect lambda runtimes — your IDE highlights them instantly. full autocomplete for every resource property.

0runtime surprises
03

typescript native

write infrastructure in the same language as your application. use familiar patterns: classes, functions, modules. import from npm. no new dsl to learn.

04

parallel everything

we automatically parallelize independent resources. deploy 50 lambdas simultaneously. independent resources deploy in parallel. maximize throughput without manual orchestration.

10xfaster deploys
05

atomic state management

state files use atomic writes with automatic backups. file-based locking prevents concurrent modifications. if something goes wrong, roll back to any previous state.

06

dev mode included

hot reload on file changes. validate configurations without deploying. built-in plan diffing shows exactly what will change. test your infrastructure before it touches the cloud.

how it works

three steps to production

type-safe. fast. predictable.

01

write

define your infrastructure in typescript. get instant feedback in your ide. catch misconfigurations before they cost you money. full autocomplete for every aws resource.

// infra.ts
import { aws, defineInfrastructure } from '@coordin8/dsl';

// resources are fully typed
const bucket = aws.s3.bucket('assets', {
  bucket: 'myapp-assets-prod',
  versioning: { enabled: true },
  // ^ autocomplete knows all s3 properties
  tags: { Environment: 'production' }
});

const api = aws.lambda.function_('api', {
  functionName: 'myapp-api',
  runtime: 'nodejs20.x',
  handler: 'index.handler',
  // types ensure invalid values are caught
  role: iamRole.arn  // typed reference
});

export default defineInfrastructure((config) => {
  config.addResource(bucket).addResource(api);
});
02

compile

compile typescript to json. our compiler validates your configuration and generates the intermediate format used by the go cli. catch errors before deployment.

$ npx coordin8-compile infra.ts

✓ parsed 2 resources
✓ validated configurations
✓ resolved dependencies
✓ generated coordin8.json

infra.ts → coordin8.json (1.2KB)

$ cat coordin8.json | head -20
{
  "version": "1.0.0",
  "resources": [
    {
      "type": "aws_s3_bucket",
      "name": "assets",
      "config": {
        "bucket": "myapp-assets-prod",
        "versioning": { "enabled": true }
      }
    }
  ]
}
03

deploy

deploy with the go cli. changes apply in parallel, automatically ordered by dependencies. plans complete in milliseconds. if something fails, get clear error messages with context.

$ coordin8 plan

✓ loaded configuration (0.1s)
✓ built dependency graph (0.2s)
✓ compared with current state (0.3s)

plan: 2 to add, 0 to change, 0 to destroy

+ aws_s3_bucket.assets
  + bucket    = "myapp-assets-prod"
  + versioning { enabled = true }

+ aws_lambda_function.api
  + function_name = "myapp-api"
  + runtime       = "nodejs20.x"

$ coordin8 apply

aws_s3_bucket.assets       creating... (0.8s) ✓
aws_lambda_function.api    creating... (1.2s) ✓

apply complete! 2.1s total