Skip to content

Quick start

Install with Go:

Terminal window
go install github.com/kado-so/cin/cmd/cin@latest

You can also download a release from GitHub Releases.

Create the shared encrypted config file at the repo root:

Terminal window
cin init vaishnav

This creates configs.secret.yaml.

Terminal window
cin set -e dev options.postgres.host postgres
cin set -e dev options.postgres.port 5432
cin set -e dev extends base

Read a value without leaking plaintext:

Terminal window
cin get -e dev options.postgres.host

Print plaintext only when needed:

Terminal window
cin get -e dev options.postgres.host --show

App values are injected as environment variables.

Terminal window
cin set -e dev -a api DATABASE_URL 'postgres://{{ .options.postgres.host }}:{{ .options.postgres.port }}/api'
cin set -e dev -a api REDIS_URL redis://localhost:6379
cin run -e dev -a api -- pnpm dev

If configs.local.secret.yaml exists, cin loads it at highest precedence.

Terminal window
cin run --local-file path/to/local.secret.yaml -e dev -a api -- pnpm dev
cin run --no-local -e dev -a api -- pnpm dev