App Hosting service
Express.js
The Express.js integration represents an Express (TypeScript) application in your design. You choose where it will be hosted and provide the app details and README, then download the scaffolded project as a ready-to-run archive.
Express.js is one of the App Hosting service integrations. It handles its own webhook route:
/expressjs/webhookWhat it does
This service does not deploy infrastructure. Instead, it scaffolds a complete Express project from the inputs you provide. When you request a SOURCE download, it generates the file tree (a TypeScript Express server with a health route, tsconfig, a host-appropriate deployment config, and your README), compresses it into a .zip, and uploads it as a file output on the download — which you can then grab from Dreambase.
Choose where it’s hosted
Thehost input is a dropdown of supported targets — railway, aws, render, vercel, or self-hosted. The scaffold includes a matching config for the target you pick: a Dockerfile for the container-based hosts, render.yaml for Render, or vercel.json for Vercel.Inputs
| Input | Required | Description |
|---|---|---|
appName | yes | The application name; also used as the npm package name (slugified). |
host | optional | Where the app will run: railway (default), aws, render, vercel, or self-hosted. |
description | optional | A short description; used in package.json and the README. |
version | optional | Initial semantic version. Defaults to 0.1.0. |
packageManager | optional | Package manager used in the generated scripts and README: npm (default), yarn, or pnpm. |
readme | optional | Markdown content for the generated README.md. A multi-line field — leave it blank to use a sensible default. |
Multi-line README field
readme is a string input marked multiline, so Dreambase renders it as a text area rather than a single-line box — room to paste a full README. Any string input can opt into this by setting multiline: true.What’s in the archive
The generated Express project includes:
package.json,tsconfig.json,.gitignore,.env.examplesrc/index.ts(an Express server) andsrc/routes/health.tsREADME.md— your content, or a generated default- a host config: a
Dockerfile,render.yaml, orvercel.json
Events it handles
WEBHOOK_CHALLENGE— verify the webhook endpoint.DOWNLOAD_STARTED— scaffold the app, zip it, and upload the archive as a file output (only theSOURCEdownload type applies).
Configuration
The service calls back into the API atDREAMBASE_API_URL (default http://localhost:3005) to update the download status, write logs, and upload the archive. It runs on PORT 3007 locally.