{"id":10955,"date":"2026-05-29T06:01:31","date_gmt":"2026-05-29T06:01:31","guid":{"rendered":"https:\/\/www.hostinger.com\/support\/?p=10955"},"modified":"2026-06-29T11:57:43","modified_gmt":"2026-06-29T11:57:43","slug":"how-to-deploy-apps-built-with-codex-on-hostinger","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/support\/how-to-deploy-apps-built-with-codex-on-hostinger\/","title":{"rendered":"How to deploy apps built with Codex on Hostinger"},"content":{"rendered":"<p>Codex hosting on Hostinger lets you deploy the apps you build with Codex on managed infrastructure, with automatic builds and no manual server setup. Hostinger supports Codex apps on Business and Cloud hosting plans, with frameworks like React, Vite, Express.js, and Next.js auto-detected from your project&rsquo;s <strong>package.json<\/strong>.<\/p><p>Deploy your Codex project from a GitHub repository or by uploading a .<strong>zip<\/strong> file. Once your Codex app is live, manage logs, environment variables, restarts, database connections, and dependency vulnerabilities directly from hPanel.<\/p><p>Watch this end-to-end walkthrough to see how to build an app with Codex and deploy it live on Hostinger via GitHub:<\/p><div class=\"intercom-h2b-video\">\n<p><iframe title=\"Full Codex Tutorial for Beginners (2026) : How Build &amp; Deploy on Codex\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/7fnfKL7jMNQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<\/div><h2 id=\"h-which-hostinger-plans-support-codex-apps\">Which Hostinger plans support Codex apps?<\/h2><p><a href=\"https:\/\/www.hostinger.com\/web-apps-hosting\/codex-hosting\">Codex hosting<\/a> is available on the following Hostinger plans:<\/p><ul>\n<li>Business web hosting<\/li>\n<li>Cloud Startup<\/li>\n<li>Cloud Professional<\/li>\n<li>Cloud Enterprise<\/li>\n<\/ul><p>If you&rsquo;re on a different plan, upgrade your hosting plan through hPanel to access Codex hosting.<\/p><p>&nbsp;<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\"><strong>NOTE<\/strong>: VPS hosting also supports Codex apps, but it requires manual configuration through the command line interface.<\/div><h2 id=\"h-what-youll-need\">What you&rsquo;ll need<\/h2><ul>\n<li>A Business hosting plan or Cloud hosting plan (Cloud Startup, Cloud Professional, or Cloud Enterprise)<\/li>\n<li>An app built with Codex using a supported framework<\/li>\n<li>Either a GitHub repository or a compressed project file (.zip)<\/li>\n<\/ul><h2 id=\"h-supported-frameworks-for-codex-apps\">Supported frameworks for Codex apps<\/h2><p>Codex hosting supports the Node.js frameworks Codex commonly outputs, with Hostinger auto-detecting the framework from your project&rsquo;s <strong>package.json<\/strong> and configuring the build for you. Your Codex app must use one of these frameworks:<\/p><p>Frontend frameworks:<\/p><ul>\n<li>React<\/li>\n<li>Vue.js<\/li>\n<li>Angular<\/li>\n<li>Vite<\/li>\n<li>Parcel<\/li>\n<li>Preact<\/li>\n<li>Next.js<\/li>\n<li>Nuxt.js<\/li>\n<li>Astro<\/li>\n<li>Svelte<\/li>\n<li>SvelteKit<\/li>\n<\/ul><p>Backend frameworks:<\/p><ul>\n<li>Next.js<\/li>\n<li>Express.js<\/li>\n<li>NestJS<\/li>\n<li>Nuxt.js<\/li>\n<li>Fastify<\/li>\n<li>Astro<\/li>\n<li>SvelteKit<\/li>\n<\/ul><p><strong>Supported Node.js versions:<\/strong> 18.x, 20.x, 22.x, 24.x<\/p><p>If Hostinger can&rsquo;t auto-detect your framework, it assigns the Other type. You can also select Other manually from the framework dropdown during setup.<\/p><h2 id=\"h-deploying-a-codex-app-from-a-github-repository\">Deploying a Codex app from a GitHub repository<\/h2><p>Connecting a GitHub repository is the fastest way to deploy a Codex app on Hostinger. After the initial connection, pushes to the linked branch trigger automatic redeployments.<\/p><h3>Step 1: Access the Node.js Apps section<\/h3><p>Log in to hPanel, navigate to Websites in the sidebar, and click Add Website.<\/p><h3>Step 2: Select Node.js Apps<\/h3><p>Choose Node.js Web App from the available options.<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10956\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02.png\" alt=\"\" width=\"1014\" height=\"556\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02.png 1014w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02-300x164.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02-768x421.png 768w\" sizes=\"(max-width: 1014px) 100vw, 1014px\" \/><\/p><h3>Step 3: Choose GitHub integration<\/h3><p>Select <strong>Continue with Github<\/strong> under the<strong> Import Git repository<\/strong> section:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10957\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_1.png\" alt=\"\" width=\"1011\" height=\"630\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_1.png 1011w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_1-300x187.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_1-768x479.png 768w\" sizes=\"(max-width: 1011px) 100vw, 1011px\" \/><\/p><h3>Step 4: Authorize GitHub access<\/h3><p>You&rsquo;ll be redirected to GitHub. Select <strong>All repositories<\/strong> then click <strong>Install &amp; Authorize<\/strong> to allow Hostinger to access your repositories:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10958\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_2.png\" alt=\"\" width=\"486\" height=\"645\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_2.png 486w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-02_2-226x300.png 226w\" sizes=\"(max-width: 486px) 100vw, 486px\" \/><\/p><h3>Step 5: Select your Codex repository<\/h3><p>Choose the repository containing your Codex app:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10959\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03.png\" alt=\"\" width=\"955\" height=\"669\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03.png 955w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03-300x210.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03-768x538.png 768w\" sizes=\"(max-width: 955px) 100vw, 955px\" \/><\/p><h3>Step 6: Configure build settings<\/h3><p>The system automatically detects your framework and suggests build settings, which you can modify if needed:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10960\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_1.png\" alt=\"\" width=\"994\" height=\"636\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_1.png 994w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_1-300x192.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_1-768x491.png 768w\" sizes=\"(max-width: 994px) 100vw, 994px\" \/><\/p><p><strong>If your framework type is &ldquo;Other&rdquo;:<\/strong><\/p><p>When <strong>Other<\/strong> is selected, Hostinger&rsquo;s detection script gathers as much configuration information as possible. Some build and output settings may need to be filled in manually:<\/p><ul>\n<li><strong>Output directory<\/strong>. The folder where your app&rsquo;s build files are generated. Common values: <strong>dist, build, out,<\/strong> or .<strong>next<\/strong>.<\/li>\n<li><strong>Entry file<\/strong>. The main file that starts your application (e.g., <strong>index.js, server.js<\/strong>). Required only if your application needs it.<\/li>\n<\/ul><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10961\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_2.png\" alt=\"\" width=\"740\" height=\"735\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_2.png 740w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_2-300x298.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-03_2-150x150.png 150w\" sizes=\"(max-width: 740px) 100vw, 740px\" \/><\/p><p>If you&rsquo;re unsure of these values, check your project&rsquo;s <strong>package.json<\/strong> or build configuration file.<\/p><h3>Step 7: Deploy your Codex app<\/h3><p>Click <strong>Deploy<\/strong> to start building your application:<\/p><p>Your Codex app is now live. Once deployment completes, you&rsquo;ll see a preview screenshot of your built site, giving you visual confirmation that the deployment was successful before navigating to your URL:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10962\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04.png\" alt=\"\" width=\"832\" height=\"702\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04.png 832w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04-300x253.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04-768x648.png 768w\" sizes=\"(max-width: 832px) 100vw, 832px\" \/><\/p><p>&nbsp;<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\">\n<p><strong>NOTE<\/strong>: One hosting plan can only be connected to one GitHub account at a time. All Codex apps within that hosting plan use the same GitHub account.<\/p>\n<\/div><h2 id=\"h-deploying-a-codex-app-by-uploading-files\">Deploying a Codex app by uploading files<\/h2><p>If you&rsquo;d rather not connect a GitHub repository, you can deploy your Codex app by uploading a compressed project file directly to Hostinger. The path works the same way as GitHub deployment, with Hostinger detecting your framework and handling the build.<\/p><h3>Step 1: Access the Node.js Apps section<\/h3><p>Log in to hPanel, navigate to <strong>Websites<\/strong>, and click <strong>Add Website.<\/strong><\/p><h3>Step 2: Select Node.js Apps<\/h3><p>Choose <strong>Node.js Web App<\/strong> from the options.<\/p><h3>Step 3: Choose file upload<\/h3><p>Select <strong>Continue<\/strong> under the<strong> Upload your website files<\/strong> option:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10963\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_1.png\" alt=\"\" width=\"878\" height=\"383\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_1.png 878w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_1-300x131.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_1-768x335.png 768w\" sizes=\"(max-width: 878px) 100vw, 878px\" \/><\/p><h3>Step 4: Upload your Codex project<\/h3><p>Upload a compressed file (.zip) containing your Codex app.<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10964\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_2.png\" alt=\"\" width=\"971\" height=\"380\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_2.png 971w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_2-300x117.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-04_2-768x301.png 768w\" sizes=\"(max-width: 971px) 100vw, 971px\" \/><\/p><p>&nbsp;<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\"><strong>NOTE<\/strong>: Your uploaded ZIP file is saved automatically. On future redeployments, it&rsquo;s pre-selected under <strong>Source files &rarr; Use previous files<\/strong>, so you won&rsquo;t need to re-upload unless your app&rsquo;s content has changed.<\/div><h3>Step 5: Configure build settings<\/h3><p>Confirm or edit the auto-detected build settings.<\/p><p><strong>If your framework type is &ldquo;Other&rdquo;:<\/strong><\/p><p>When <strong>Other<\/strong> is selected, Hostinger&rsquo;s detection script gathers as much configuration information as possible. Some settings may need to be filled in manually:<\/p><ul>\n<li><strong>Output directory.<\/strong> The folder where your app&rsquo;s build files are generated. Common values: <strong>dist, build, out,<\/strong> or .<strong>next<\/strong>.<\/li>\n<li><strong>Entry file.<\/strong> The main file that starts your application (e.g., <strong>index.js, server.js<\/strong>). Required only if your application needs it.<\/li>\n<\/ul><p>If you&rsquo;re unsure of these values, check your project&rsquo;s <strong>package.json<\/strong> or build configuration file.<\/p><h3>Step 6: Deploy your Codex app<\/h3><p>Click <strong>Deploy<\/strong> to build and launch your Codex app.<\/p><p>Your Codex app is now ready to use. Once deployment completes, you&rsquo;ll see a preview screenshot of the built site, giving you visual confirmation that the deployment was successful.<\/p><h2 id=\"h-managing-your-deployed-codex-app\">Managing your deployed Codex app<\/h2><p>The Node.js Website Dashboard in hPanel gives you everything you need to manage your live Codex app. From a single screen, you can monitor deployment status, jump to environment variables, view resource graphs, and restart server-side apps:<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10965\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05.png\" alt=\"\" width=\"856\" height=\"707\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05.png 856w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05-300x248.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05-768x634.png 768w\" sizes=\"(max-width: 856px) 100vw, 856px\" \/><\/p><p><strong>1. GitHub repository quick link<\/strong><\/p><p>If your Codex app is deployed via GitHub, the dashboard shows a direct link to the connected repository. Click it to open the repo in a new tab to check code, branches, or recent commits without leaving hPanel.<\/p><p><strong>2. Last deployment details<\/strong><\/p><p>The dashboard displays detailed information about your most recent deployment, including:<\/p><ul>\n<li>Deployment status (success or failed)<\/li>\n<li>Timestamp of the last deployment<\/li>\n<li>A quick link to view the full deployment log<\/li>\n<\/ul><p>This replaces the need to navigate to the Deployments section just to check the latest build status.<\/p><p><strong>3. Quick links to key features<\/strong><\/p><p>Quick navigation links let you jump directly to:<\/p><ul>\n<li>Deployments<\/li>\n<li>Environment Variables<\/li>\n<li>Settings &amp; Redeploy<\/li>\n<li>File Manager<\/li>\n<\/ul><p><strong>4. Resource usage graphs<\/strong><\/p><p>The dashboard includes average resource usage graphs for CPU, RAM, and I\/O. The graphs give you a quick visual overview of how your Codex app consumes hosting resources without navigating to the full Resource Usage section.<\/p><p>If any metric approaches the red dotted line (your plan&rsquo;s limit), optimize your app or <a href=\"https:\/\/www.hostinger.com\/support\/1583459-how-to-upgrade-a-hosting-plan-at-hostinger\/\">upgrade your plan<\/a>.<\/p><p><strong>5. Restart<\/strong><\/p><p>The dashboard includes a Restart button when you click Running for server-side Codex apps. Use this to restart the server process directly from hPanel, with no full rebuild or redeployment needed.<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\"><strong>NOTE<\/strong>: The Restart option is only available for server-side apps (e.g., Express.js, Next.js, NestJS). Static frontend Codex apps (React, Vue, Angular, Vite) don&rsquo;t run a persistent server process and won&rsquo;t have this option.<\/div><h2 id=\"h-file-structure-after-deployment\">File structure after deployment<\/h2><p>For Codex apps that generate backend build files (e.g., Express.js, Next.js, Nuxt.js, NestJS), build output is stored outside<strong> public_html:<\/strong><\/p><ul>\n<li><strong>Build files location: \/home\/{username}\/domains\/{domain}\/nodejs<\/strong><\/li>\n<li><strong>.htaccess location: \/home\/{username}\/domains\/{domain}\/public_html\/.htaccess.<\/strong> Automatically created to handle routing and serve content correctly.<\/li>\n<\/ul><p>If your Codex app was previously deployed with build files inside <strong>public_html<\/strong>, they&rsquo;re moved automatically on the next build.<\/p><p>&nbsp;<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\">\n<p><strong>NOTE<\/strong>:<\/p>\n<ul>\n<li>This change applies to backend frameworks only. Frontend-only Codex apps (React, Vue, Angular) are not affected.<\/li>\n<li>If you encounter a 403 error after redeployment, check that the .htaccess file in public_html is correctly routing to the nodejs directory. Redeploying the application regenerates this file.<\/li>\n<\/ul>\n<\/div><h2 id=\"h-database-connect-wizard\">Database connect wizard<\/h2><p>The Node.js dashboard includes a database connect wizard to help you connect your Codex app to an external database.<\/p><p><strong>Supported providers:<\/strong><\/p><ul>\n<li>Supabase<\/li>\n<li>MongoDB Atlas<\/li>\n<\/ul><p>How it works:<\/p><ol>\n<li>Locate the database connect wizard section in your Node.js dashboard and click <strong>Connect<\/strong>:<br>\n<img decoding=\"async\" class=\"alignnone size-full wp-image-10966\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_1.png\" alt=\"\" width=\"992\" height=\"571\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_1.png 992w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_1-300x173.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_1-768x442.png 768w\" sizes=\"(max-width: 992px) 100vw, 992px\" \/><\/li>\n<li>Select your database provider (Supabase or MongoDB Atlas):<br>\n<img decoding=\"async\" class=\"alignnone size-full wp-image-10967\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_2.png\" alt=\"\" width=\"979\" height=\"427\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_2.png 979w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_2-300x131.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-05_2-768x335.png 768w\" sizes=\"(max-width: 979px) 100vw, 979px\" \/><\/li>\n<li>Follow the on-screen instructions by entering the required database connection details. They&rsquo;re saved automatically as environment variables in your deployment.<br>\n<img decoding=\"async\" class=\"alignnone size-full wp-image-10968\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06.png\" alt=\"\" width=\"732\" height=\"522\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06.png 732w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06-300x214.png 300w\" sizes=\"(max-width: 732px) 100vw, 732px\" \/><\/li>\n<li>The project rebuilds automatically after setup to apply the new configuration.<\/li>\n<\/ol><p>For manual database connection setup, see:<\/p><ul>\n<li><a href=\"https:\/\/www.hostinger.com\/support\/connecting-a-supabase-database-to-a-hostinger-node-js-application\/\">Connecting a Supabase database to a Hostinger Node.js application<\/a><\/li>\n<li><a href=\"https:\/\/www.hostinger.com\/support\/connecting-a-hostinger-mysql-database-to-a-node-js-application\/\">Connecting a Hostinger MySQL database to a Node.js application<\/a><\/li>\n<\/ul><h2 id=\"h-vulnerability-monitoring\">Vulnerability monitoring<\/h2><p>Hostinger includes automatic vulnerability monitoring for your Codex app&rsquo;s dependencies. To access it, go to <strong>Security &rarr; Vulnerabilities:<\/strong><\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-10969\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_1.png\" alt=\"\" width=\"988\" height=\"528\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_1.png 988w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_1-300x160.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_1-768x410.png 768w\" sizes=\"(max-width: 988px) 100vw, 988px\" \/><\/p><p><strong>What it does:<\/strong><\/p><ul>\n<li>Scans deployed Codex apps for vulnerable npm packages<\/li>\n<li>Reports affected package names, available fixed (secure) versions, and severity levels<\/li>\n<li>Automatically scans all newly deployed applications<\/li>\n<li>Applications deployed before this feature launched are scanned on their next deployment<\/li>\n<\/ul><p><strong>What to do when a vulnerability is detected<\/strong>: Update the affected package to the fixed version listed in the report, then redeploy your Codex app.<\/p><p>Hostinger supports automated vulnerability patching for Codex apps deployed via GitHub. When a vulnerability is detected, you can apply an auto-fix directly from the Vulnerabilities page without manual package hunting.<\/p><p><strong>How auto-fix works:<\/strong><\/p><ol>\n<li>On the Vulnerabilities page, select one or more vulnerabilities and click <strong>Auto-fix<\/strong> (or <strong>Auto-fix all<\/strong> to fix in bulk).<\/li>\n<li>Hostinger opens a pull request on your connected GitHub repository with the recommended package update.<\/li>\n<li>Review and merge the PR on GitHub. Nothing is pushed to your branches without your action.<\/li>\n<li>Once merged, a new deployment triggers automatically and the vulnerability is marked as fixed.<\/li>\n<\/ol><p><strong>Important notes:<\/strong><\/p><ul>\n<li>Auto-fix is only available for Codex apps deployed via GitHub. File upload deployments are not supported.<\/li>\n<li>Not all vulnerabilities have an auto-fix available. For those that don&rsquo;t, update the affected package manually and redeploy.<\/li>\n<li>Auto-fix requires the Hostinger GitHub App to have write access to your repository. If write access hasn&rsquo;t been granted, an error appears when you attempt to create a pull request. You&rsquo;ll need to approve the permission update via the email sent by GitHub on Hostinger&rsquo;s behalf.<\/li>\n<li>You still review and merge every PR. Hostinger doesn&rsquo;t push changes directly to your branches or access your secrets or environment variables.<\/li>\n<\/ul><h2 id=\"h-frequently-asked-questions\">Frequently asked questions<\/h2><p><strong>1. I already have a domain added at Hostinger. How do I deploy my Codex app to it?<\/strong><\/p><p>Currently, Codex apps must be deployed as a new website. The process:<\/p><ol>\n<li>If the domain is already added to your hosting plan,<a href=\"https:\/\/www.hostinger.com\/support\/3624731-how-to-delete-a-website-from-a-hosting-plan-in-hostinger\/\"> remove the website<\/a> first before adding a new one.\n<div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\"><strong>NOTE<\/strong>: Download a backup before removing the website.<\/div>\n<\/li>\n<li>Click<strong> Add Website<\/strong> and select <strong>Node.js Apps.<\/strong><\/li>\n<li>Choose your deployment method (GitHub or file upload).<\/li>\n<li>Once deployment completes, your Codex app is active on the domain you added.<\/li>\n<\/ol><p><strong>2. How do I remove or undeploy my Codex app?<\/strong><\/p><p>There&rsquo;s currently no &ldquo;Stop&rdquo; or &ldquo;Delete&rdquo; button for Codex app deployments. To take your app offline, remove the entire website from hPanel. This deletes all associated deployments and takes your app offline.<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\"><strong>NOTE<\/strong>: Before removing your website, download a backup. This action is not reversible, and all files, databases, emails, and configurations will be lost.<\/div><p><strong>3. What npm commands can be run?<\/strong><\/p><p>You don&rsquo;t need to run npm commands manually via SSH or install npm separately. It&rsquo;s already pre-installed by Hostinger.<br>\nThe npm build commands available are visible in the <strong>Build settings<\/strong> dropdown during application setup:<br>\n<img decoding=\"async\" class=\"alignnone size-full wp-image-10970\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_2.png\" alt=\"\" width=\"564\" height=\"456\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_2.png 564w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/05\/2026-05-29_12-06_2-300x243.png 300w\" sizes=\"(max-width: 564px) 100vw, 564px\" \/><\/p><p><strong>4. Can I deploy a Codex app from a private GitHub repository?<\/strong><\/p><p>Yes. Connect your GitHub account, grant access to the private repo, and deploy from the branch you want. Pushes to the connected branch trigger automatic redeployments.<\/p><p><strong>5. How do I move a Codex app from local development or another host?<\/strong><\/p><p>Push your Codex app to GitHub, connect the repository in Hostinger, and set the environment variables your app needs. If you&rsquo;re migrating from another host, keep the same Node.js entry point and database settings where possible to reduce changes.<\/p><p>That&rsquo;s it! You&rsquo;ve successfully deployed a Codex app on Hostinger using GitHub integration or direct file upload. For questions or further help, reach out to our support team via live chat 24\/7.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deploy apps built with Codex on Hostinger via GitHub or .zip upload. Auto-detected frameworks and managed Node.js hosting, with no manual server setup.<\/p>\n","protected":false},"author":594,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"include_on_kodee":true,"footnotes":""},"categories":[313],"tags":[],"class_list":["post-10955","post","type-post","status-publish","format-standard","hentry","category-codex"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/support\/how-to-deploy-apps-built-with-codex-on-hostinger","default":1}],"include_on_kodee":true,"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/10955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/users\/594"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/comments?post=10955"}],"version-history":[{"count":2,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/10955\/revisions"}],"predecessor-version":[{"id":12116,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/10955\/revisions\/12116"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/media?parent=10955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/categories?post=10955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/tags?post=10955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}