novaserve-sdk
v2.1.9
Published
NovaServe SDK — TypeScript-first serverless configuration
Maintainers
Readme
novaserve-sdk
TypeScript-first serverless application configuration SDK for NovaServe.
Define cloud resources—APIs, databases, object storage, queues, cron jobs, and secrets—directly in TypeScript with 100% type safety and zero YAML boilerplate.
Installation
npm install novaserve-sdk
# or
pnpm add novaserve-sdkQuick Example (nova.config.ts)
import { defineApp, api, storage, queue, database } from "novaserve";
export default defineApp({
name: "my-nova-app",
region: "ap-south-1",
runtime: "node20",
resources: {
api: api.create({
routes: {
"GET /health": "src/handlers/health.get",
"GET /users": "src/handlers/users.list",
"POST /users": "src/handlers/users.create",
},
cors: true,
}),
uploads: storage.bucket("user-uploads", { maxSize: "10mb" }),
emailQueue: queue.create("email-notifications", {
handler: "src/handlers/email.process",
retries: 3,
}),
mainDb: database.postgres("main-db", { version: "15" }),
},
});API Exports
defineApp(config): Primary application specification builderapi.create(options): HTTP API Gateway and route mappingsfn.create(options): Standalone serverless function definitionstorage.bucket(name, options): S3 / R2 Object storage bucketdatabase.postgres(name, options): Managed relational PostgreSQL databasequeue.create(name, options): Asynchronous SQS message queue workercron.schedule(cronExpr, options): Scheduled cron job workercache.redis(name, options): Managed ElastiCache / Redis in-memory storesecret.define(name): KMS encrypted secret reference
Documentation & Repository
- Main Repository: https://github.com/novaserve-cloud/novaserve
- Primary Package: https://www.npmjs.com/package/novaserve
License
Apache-2.0 © Md Shadab Azam Ansari & NovaServe Contributors
