> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://helpdesk.tiiny.host/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Can I host apps that run server code (PHP, Python, Node.js)?

| Available on **Tiny** and above.

Most uploads are static: HTML, CSS, JavaScript, PDFs and images. On paid plans, we can also run small apps that need code running on a server. On the free plan you'll see "This upload type cannot be hosted on the free plan."

### What we can run

| App type | What we look for | What we run |
| ---- | ---- | ---- |
| PHP | A `.php` file | PHP 8.3, starting from `index.php` |
| Python | A `.py` file | Python 3.13, starting from `main.py` |
| Node.js | A zip with a `package.json` that has a `start`, `server` or `dev` script and a server framework in its dependencies | Installs your packages, then runs `node server.js` |
| React source code | A zip with a `package.json` that has a `start` or `dev` script and React in its dependencies | Installs your packages, then runs `npm start` |

If you upload a single file, we rename it to the starting file for you.

### Good to know

* Your app gets an address ending in `.tiiny.io`.
* It can connect to outside services, like a database or an API hosted elsewhere.
* We run `npm install` for Node.js. We don't run `pip install` or `composer install`.
* To set environment variables, include a `.env` file in your zip.
* Apps count towards your project limit.
* To update an app, upload it again to the same project.

### Built a React, Vue or Angular app?

If you've already built it (you have a folder with `index.html` in it), it's a normal static site and works on every plan. Zip and upload only the build folder. If your zip includes `package.json`, we'll try to run it as an app instead.

### What isn't available for apps

Password protection, Email protect, Capture emails, custom 404 pages, analytics, version history, archiving and the site editor. QR codes and embedding work as normal.

||| Deleting an app is permanent.

### If it doesn't work

If you see "Error deploying site", check your starting file is named as in the table, then upload again. Still failing? Email support@tiiny.host with your link.

### What we can't host

* WordPress and other CMS platforms. See [Do you support WordPress or similar CMS?](https://helpdesk.tiiny.host/en/article/do-you-support-wordpress-or-similar-cms-uihrap/)
* Databases. See [Can I use a database with Tiiny Host?](https://helpdesk.tiiny.host/en/article/databases-and-tiiny-host-155tje9/)