Skip to content

Recipes ​

Recipes are importable modules that register tasks. Application recipes usually insert deployment steps; service recipes such as systemd and Caddy require explicit pipeline placement.

RecipeDescription
astroAstro remote build for server output
astro_staticAstro static site with local build
caddyValidate, reload, and upload Caddy configuration
gitClone the repository and log revisions
rsyncTransfer files via rsync
adonisjsAdonisJS-specific deployment steps with remote build
adonisjs_localAdonisJS local build plus artifact upload
directusDirectus schema and database tasks
nestjsNestJS remote build using standard Node.js tasks
nextjsNext.js remote build with standalone output symlinks
nextjs_localNext.js standalone server built locally and uploaded
nextjs_staticNext.js static export with local build
nuxtNuxt build and static generation tasks
nuxt_staticNuxt static site with local generation
pm2Process management with PM2
redisFlush one, many, or all Redis databases
systemdRestart, reload, inspect, and read logs for services
tanstackTanStack Start remote build for Node.js server output
vitepressBuild VitePress locally and upload static artifacts

Choosing a deployment approach ​

Application / recipeBuild locationFile transferRuntime
adonisjs, astro, nestjs, nextjs, nuxt, tanstackServerCore SCP by default; Git or rsync can replace itNode.js with PM2, systemd, or your own process manager
adonisjs_localLocal; production dependencies installed on serverRecipe uploads build output with SCPNode.js with a process manager
nextjs_localLocalRecipe uploads standalone output with SCP; optional archiveNode.js with a process manager
astro_static, nextjs_static, nuxt_staticLocalCore SCP uploads the generated static directoryStatic web server
vitepressLocalRecipe uploads generated documentation with SCPStatic web server

Choose one provider of deploy:update_code. Do not combine Git or rsync with a recipe that already owns artifact delivery unless you deliberately replace its pipeline. A Git transfer deploys repository content, not your locally generated output.

Application build recipes do not automatically choose a process manager. Import pm2 for its deployment reload steps, or explicitly place systemd:restart after deploy:publish. Caddy can serve static output or proxy to the application's port; its upload/reload tasks also need explicit placement.

For first-time systemd installation, follow the bootstrap example. For complete configurations, see Deployment Examples.