Skip to content

Introduction

VentureKit is a modular TypeScript framework for building SaaS applications on AWS. It gives founders and developers full control without the boilerplate — from Lambda handlers to infrastructure provisioning, authentication, billing, and AI.

Building a SaaS product on AWS requires stitching together dozens of services: Lambda, API Gateway, Cognito, RDS, S3, SQS, ElastiCache, and more. Each service has its own SDK, configuration format, and deployment quirks.

VentureKit abstracts this complexity behind a declarative, type-safe API:

  • One config file defines your entire application
  • File-based routing discovers your API endpoints automatically
  • Infrastructure intents let you declare what you need, not how to build it
  • Presets give you production-ready defaults in one word (nano, micro, medium, large)
  • Unified handler adapts to context — public or authenticated, with automatic status codes
  • Explicit over implicit — Every config field is visible and overridable. No hidden magic.
    • Presets as shortcuts — Use nano, micro, medium, large to get started. Override what you need.
    • Layered config — Base (identity) + Security (auth) + Environment (resources) = Full control.
    • Smart defaults — Handlers adapt to context. No scopes = public. With scopes = authenticated.
vk.config.ts ← Defines your entire app
config/
base.ts ← Project identity (never changes)
security.ts ← OAuth scopes and clients
dev.ts / prod.ts ← Environment-specific sizing
src/routes/
health/get.ts ← GET /health (public)
tasks/post.ts ← POST /tasks (authenticated)
tasks/[id]/get.ts ← GET /tasks/{id} (dynamic)

VentureKit is a modular monorepo with 12 independent packages — 8 free under @venturekit/* (Apache-2.0) and 4 commercial under @venturekit-pro/*:

PackageTierPurpose
@venturekit/coreFreeTypes, presets, config resolution, validation
@venturekit/runtimeFreeHandlers, context, middleware, logging, errors
@venturekit/infraFreeCDK constructs for AWS infrastructure
@venturekit/cliFreeCLI — scaffolding, dev, deploy, generate, migrate
@venturekit/authFreeCognito, RBAC, scope checking, JWT utilities
@venturekit/dataFreeRDS config, migrations, query utilities, transactions
@venturekit/storageFreeS3 config, CDN, lifecycle policies
@venturekit/integrationsFreeHTTP client, OAuth2, API key management
@venturekit-pro/aiProEmbeddings, vector stores, RAG, agents
@venturekit-pro/billingProPlans, feature limits, usage tracking, invoicing
@venturekit-pro/commsProEmail, SMS, push, chat, broadcast messaging
@venturekit-pro/tenancyProMulti-tenant resolution, isolation, quotas

Install only the packages you need. All packages are public on npm — no auth required for installation. Pro packages enforce licensing at runtime via a license key.