briqbriq

Node.js app

Your Node.js code running as a service, from files or a GitHub repo: it installs package.json and starts it. No image to build.

  • app
  • language

Guides: Run your own app, Run a GitHub repo

Run it

briq_run({
  recipe: "node",
  params: {
    "version": "22",
    "packages": [],
    "port": 8080,
    "env": {},
    "size": "small"
  },
  wait: true
})

Parameters

NameTypeOptionsDefault
versionenum22, 24"22"
filesrecord{ "path": "content" | { base64 } }—
repoobject{ url, ref?, dir?, token? }—
packagesstring[]—[]
installstring——
buildstring——
startstring——
portnumber—8080
envrecord{ NAME: "value" | { secret, value? } }{}
sizeenumnano, small, medium, large"small"
diskGbnumber——

Outputs

Returned by briq_run once the stack is healthy. Hosts resolve inside your team network; secrets are generated per run.

APP_URL
http://app.<stack>.internal:8080

What it runs

BriqImagePortsSizeVolume
appnode:22-slim8080small—

When to use it

  • You wrote an Express, Fastify or plain node:http server and want it running next to its database, with a URL, without building an image.
  • A webhook receiver, an API mock or a small bot should run as a service.

Tips

  • Code in a repo: pass repo: { url: "github.com/owner/app" } instead of files. See Run a GitHub repo.
  • A bot or a scheduler that only makes outgoing calls is not seen as use, so it sleeps after its sleep window. Give it sleep: "never" (always on, Pro plan and above), or a window longer than the gap between its runs.
  • Pass the code as files: { "server.js": "…", "package.json": "…" }. Relative paths go under /app, the working directory, written before the app starts and again whenever it starts over.
  • package.json is installed at each start (npm ci when there is a lockfile); packages: ["express"] adds more without one. They stay on the disk, so restarts are quick.
  • start is the command when it is not node server.js, e.g. "npm start".
  • Yarn 2 and later need the packageManager field in package.json (yarn set version writes it): without it, corepack runs Yarn 1 instead of the version the repo was made with.
  • Listen on :: and on process.env.PORT (8080 by default).
  • No build step: ship JavaScript, or use the bun recipe to run TypeScript as it is.
  • Publish it as you run it with expose: "private" (or "public" for anyone): it returns URL.
  • Step by step: Run your own app, with a database and a URL.

On this page

Free to try

Let your agent try it, on us.

Every new account starts with €10 of credits. No card.

Connect your agent

How can we help?

Message to the briq team
hello@briq.cloud