Reference
Configuration Reference (nova.config.ts)
Complete reference for all nova.config.ts options including compiler, AWS, Cloudflare, and state settings.
The nova.config.ts file lives at the root of your project and controls how NovaServe compiles and deploys your codebase.
Full Configuration Example
nova.config.ts
1import { defineConfig } from "novaserve/config";23export default defineConfig({4 // Application identity5 name: "my-cloud-app",6 target: "aws",7 region: "us-east-1",89 // Compiler options10 compiler: {11 strictAstValidation: true,12 optimizeMemoryMB: 512,13 },1415 // AWS-specific configuration16 aws: {17 region: "us-east-1",18 architecture: "arm64",19 runtime: "nodejs20.x",20 memorySize: 512,21 timeout: 10,22 s3: {23 forcePathStyle: false,24 sseAlgorithm: "AES256",25 },26 },2728 // Cloudflare configuration29 cloudflare: {30 accountId: process.env.CLOUDFLARE_ACCOUNT_ID,31 compatibilityDate: "2026-08-01",32 },3334 // State management35 state: {36 backend: "local",37 lockTable: "novaserve-locks",38 },39});Configuration Properties
Top-Level Properties
| Property | Type | Description |
|---|---|---|
| name | string | Unique application identifier |
| target | "aws" | "cloudflare" | "docker" | Default cloud target provider |
| region | string | Primary cloud region (e.g., us-east-1) |
Compiler Options
| Property | Type | Description |
|---|---|---|
| compiler.strictAstValidation | boolean | Fail build if undeclared primitives exist |
| compiler.optimizeMemoryMB | number | Memory optimization target in MB |
AWS Configuration
| Property | Type | Default | Description |
|---|---|---|---|
| aws.region | string | us-east-1 | AWS region for deployment |
| aws.architecture | "arm64" | "x86_64" | arm64 | Lambda CPU architecture |
| aws.runtime | string | nodejs20.x | Lambda runtime version |
| aws.memorySize | number | 512 | Lambda memory in MB |
| aws.timeout | number | 10 | Lambda timeout in seconds |
State Configuration
| Property | Type | Default | Description |
|---|---|---|---|
| state.backend | "local" | "s3" | local | State storage backend |
| state.lockTable | string | — | DynamoDB lock table name for team collaboration |