Skip to content

Render

The Render lexicon defines Render services, datastores, env groups, projects, and environments using chant’s declarative TypeScript syntax. Resources are serialized to the JSON create bodies the Render Public API accepts, so the applier can POST them straight through — no Blueprint, no CLI, no state file.

This lexicon is generated from Render’s published OpenAPI spec.

Install it with:

Terminal window
npm install --save-dev @intentius/chant-lexicon-render
import {
WebService, WebServiceDetails, NativeEnvironmentDetails, EnvVar, GeneratedEnvVar, Postgres, Render,
} from "@intentius/chant-lexicon-render";
const db = new Postgres({ name: "app-db", plan: "free", version: "16", region: Render.Region });
const web = new WebService({
name: "app-web",
repo: "https://github.com/render-examples/express-hello-world",
serviceDetails: new WebServiceDetails({
runtime: "node",
plan: "starter",
region: Render.Region,
envSpecificDetails: new NativeEnvironmentDetails({ buildCommand: "npm ci", startCommand: "npm start" }),
}),
envVars: [
new EnvVar({ key: "DATABASE_URL", value: db.internalConnectionString }),
new GeneratedEnvVar({ key: "SESSION_SECRET", generateValue: true }),
],
});
export { db, web };

Render.OwnerId and Render.Region are pseudo-parameters resolved from the environment at build time (RENDER_OWNER_ID, RENDER_REGION). Every ownerId chant fills in defaults to Render.OwnerId, so a stack rarely names it. db.internalConnectionString is an attribute read the applier resolves from the live database.

MetricCount
Resources14
Property types23
Services4
Intrinsic functions0
Pseudo-parameters0
Lint rules6

Lexicon version: 0.53.1
Namespace: Render