// Generated by scripts/generate-manifest.mjs. Do not edit by hand. import type { AddOnCompiled } from '../../../../../types.js' type TemplateRecord = Record type TemplateAddOn = TemplateRecord & { integrations?: Array routes?: Array } type TemplateRenderContext = { [key: string]: any packageManager: any projectName: any typescript: any tailwind: any blank: any js: any jsx: any fileRouter: any codeRouter: any routerOnly: any includeExamples: any addOnEnabled: Record addOnOption: Record addOns: Array integrations: Array routes: Array getPackageManagerAddScript: (...args: Array) => string getPackageManagerRunScript: (...args: Array) => string getPackageManagerExecuteScript: (...args: Array) => string relativePath: (...args: Array) => string integrationImportContent: (...args: Array) => string integrationImportCode: (...args: Array) => string | undefined renderTemplate: (content: string) => string ignoreFile: () => never } type TemplateRenderer = (context: TemplateRenderContext) => string | undefined function __escapeXML(value: unknown) { if (value === undefined || value === null) { return '' } return String(value).replace(/[&<>'"]/g, (character) => { switch (character) { case '&': return '&' case '<': return '<' case '>': return '>' case '"': return '"' case "'": return ''' default: return character } }) } export function getManifestTemplateKey(template: string) { let hash = 0x811c9dc5 for (let i = 0; i < template.length; i++) { hash ^= template.charCodeAt(i) hash = Math.imul(hash, 0x01000193) >>> 0 } return `${hash.toString(16).padStart(8, '0')}:${template.length}` } function __render_e404fd5e_429(context: TemplateRenderContext) { const { packageManager, projectName, typescript, tailwind, blank, js, jsx, fileRouter, codeRouter, routerOnly, includeExamples, addOnEnabled, addOnOption, addOns, integrations, routes, getPackageManagerAddScript, getPackageManagerRunScript, getPackageManagerExecuteScript, relativePath, integrationImportContent, integrationImportCode, renderTemplate, ignoreFile, } = context let __output = '' const __append = (value: unknown) => { if (value !== undefined && value !== null) { __output += String(value) } } __append("services:\n - type: web\n runtime: node\n name: tanstack-start-app\n buildCommand: ") __append(__escapeXML(packageManager)) __append(" install && ") __append(__escapeXML(getPackageManagerRunScript('build'))) __append("\n startCommand: ") __append(__escapeXML(getPackageManagerRunScript('start'))) __append("\n envVars:\n") if (packageManager === 'bun') { __append("- key: BUN_VERSION\n value: '1.3.14'\n") } __append("- key: NITRO_PRESET\n value: render-com\n - key: HOST\n value: 0.0.0.0\n") return __output } const templateRenderers: Record = { "e404fd5e:429": __render_e404fd5e_429, } export function hasManifestTemplate(template: string) { return getManifestTemplateKey(template) in templateRenderers } export function renderManifestTemplate( template: string, context: TemplateRenderContext, ) { const key = getManifestTemplateKey(template) const renderer = templateRenderers[key] if (!renderer) { throw new Error(`Template ${key} was not precompiled into the manifest`) } return renderer(context) ?? '' } export const addOn = { "name": "Render", "description": "Deploy to Render (full-stack cloud platform with GitHub integration).", "link": "https://render.com/", "phase": "add-on", "modes": [ "file-router" ], "type": "deployment", "supportedPackageManagers": [ "npm", "yarn", "pnpm", "bun" ], "category": "deploy", "exclusive": [ "deploy" ], "color": "#46E3B7", "priority": 150, "partner": { "id": "render", "tier": "gold" }, "integrations": [ { "type": "vite-plugin", "import": "import { nitro } from 'nitro/vite'", "code": "nitro()" } ], "id": "render", "version": "0.0.0", "packageAdditions": { "scripts": { "start": "node .output/server/index.mjs" }, "dependencies": { "nitro": "3.0.260610-beta" } }, "readme": "## Deploy to Render\n\nThis project includes a Render Blueprint:\n\n1. Push this repo to GitHub, GitLab, or Bitbucket\n2. In Render, choose **New > Blueprint** and connect this repo\n3. Render reads `render.yaml` and creates the web service\n4. In the Render Dashboard, add any secrets from `.env.example` under **Environment**\n5. Deploy\n\nThe Nitro server handles SSR, server functions, API routes, and static assets.\nRender provides `PORT` automatically; Nitro reads it at runtime.\n\nNeed a database? Add one from the Render Dashboard, then connect it via\nenvironment variables. See https://render.com/docs/databases for options.\n", "readmeIsEjs": false, "files": { "render.yaml.ejs": "services:\n - type: web\n runtime: node\n name: tanstack-start-app\n buildCommand: <%= packageManager %> install && <%= getPackageManagerRunScript('build') %>\n startCommand: <%= getPackageManagerRunScript('start') %>\n envVars:\n<% if (packageManager === 'bun') { -%>\n - key: BUN_VERSION\n value: '1.3.14'\n<% } -%>\n - key: NITRO_PRESET\n value: render-com\n - key: HOST\n value: 0.0.0.0\n" }, "deletedFiles": [] } satisfies AddOnCompiled