@naeti/quickserver
v0.4.0
Published
Quick Server — TypeScript framework and init CLI for mobile app prototyping
Readme
Quick API (@naeti/quickserver)
TypeScript API framework with typed routes, inspector, and optional Postgres / Redis / SQS / DynamoDB.
Deployment integrations
| | node-http (default) | aws-lambda |
|--|----------------------|--------------|
| Entry | server.start() — Hono + Node HTTP | createLambdaHandler(buildApp) — API Gateway HTTP API v2 |
| Inspector /_quick | development | disabled |
| Background tasks | in-process on start() | not started — use EventBridge / separate Lambdas |
| Infra in dev | Docker testcontainers | env only (DATABASE_URL, SQS_*, …) |
| DB migrations on connect | yes | deploy-time by default; RUN_MIGRATIONS_ON_COLD_START=true optional |
// app.ts
export async function buildApp() {
const isLambda = Boolean(process.env.AWS_LAMBDA_FUNCTION_NAME);
return quickserver.builder()
.mode(isLambda ? "production" : "development")
.integration(isLambda ? "aws-lambda" : "node-http")
.routes()
// ...
.build();
}// lambda.ts
import { createLambdaHandler } from "@naeti/quickserver";
import { buildApp } from "./app.js";
export const handler = createLambdaHandler(buildApp);# AWS Lambda
quickserver export lambda
pnpm build
sam build && sam deploy
# Node HTTP (Docker)
quickserver export node-http
pnpm build
docker compose up --buildPreview deploy wiring without writing files: build({ dryRun: true }) then server.dryRun().
CLI
npx @naeti/quickserver@latest init my-app
# interactive: deploy target (node-http | aws-lambda) + feature checkboxes
# non-interactive
npx @naeti/quickserver@latest init my-app --yes
npx @naeti/quickserver@latest init my-app --yes \
--target aws-lambda --features database,queue,recordings \
--dev-host 127.0.0.1 --dev-mock-user
npx @naeti/quickserver@latest update ./my-app
quickserver export node-http # Dockerfile + docker-compose.yml
quickserver export lambda # template.yaml + samconfig.tomlinit generates src/app.ts from your choices (infra features, dev bind host, inspector/mock-user/logging, .persistent() for Docker) and writes deploy artifacts. Node HTTP deploy uses docker-compose.yml + .env.docker (not inline env).
Monorepo docs: ../../README.md, builder reference: ../../USAGE.md.
