Node.js & Python apps¶
Besides classic PHP websites, the panel can run Node.js and Python applications — for example Next.js, Express, Nuxt, FastAPI, Flask or Django. The panel runs your app as its own service and automatically routes your domain to it.
Requirement
This feature must be enabled in your package (Node.js/Python). If it's missing, contact your provider.
How it works¶
When you create a website as a Node.js or Python app:
- Your app runs as its own background service under your website user (isolated from other websites) and restarts automatically if it crashes.
- The app listens internally on a port you choose (e.g. 3000).
- The web server automatically forwards requests for your domain to that port (reverse proxy). Visitors simply open
https://your-domain.com.
Create an app website¶
- Click Create website.
- Under App type, choose Node.js, Python or Static instead of PHP.
-
For Node.js/Python, also fill in:
Field Meaning Example Runtime version Node/Python version (pick from installed ones) Node 22 Start command How your app is launched npm run start·gunicorn app:app --bind 127.0.0.1:$PORTPort Internal port your app listens on 3000Environment variables Optional KEY=VALUElinesDATABASE_URL=…The port is also provided to your app as the
PORTenvironment variable — frameworks like Next.js use it automatically. -
Create the website.
Runtime versions
You pick from the installed Node/Python versions. Only your provider (administrator) can install a new version.
Upload your code¶
Upload your app code into the website's directory (document root) — via the File Manager, FTP/SFTP or Git (SSH). The app starts from there.
Manage the app¶
On a Node.js/Python website you'll find the ⚡ Manage app action. There you can:
- Install dependencies — runs
npm install(for Pythonpip install -r requirements.txt). For Node.js it also runsnpm run buildwhen your project has a build script (e.g. Next.js, Nuxt, Vite). - Start / Stop / Restart and view the status.
- View logs (your app's output).
- Change the start command, port, environment variables and runtime version.
Example: Next.js¶
- Create a website with App type Node.js, choose the Node runtime.
- Click Next.js preset — sets the start command to
npm run start. - Set a port (e.g.
3000) and save. - Upload your Next.js code into the website directory (including
package.json). - ⚡ Manage app → Install dependencies — this runs
npm installandnpm run build. - Start.
Your domain now serves the Next.js app.
Static sites
For purely static websites (prebuilt HTML/CSS/JS with no running process), choose app type Static — the web server then serves the files directly, with no app service.