githubEdit

Deployment Platforms

Deploy your Needle Engine projects to the web with one click. Learn how to publish to Netlify, Vercel, GitHub Pages, itch.io, FTP servers, and more. Includes optimization tips for production builds wi

Get your Needle Engine projects live on the web. Deploy to popular hosting platforms like Netlify, Vercel, GitHub Pages, and more.

:::tip Optimize Your Build First Before deploying to production, optimize your project for best performance: Optimization & Compression →arrow-up-right

Learn about texture compression (KTX2), mesh compression (Draco/Meshopt), progressive loading, and build types. :::

What does deployment mean?

Deployment is the process of making your application available to the public on a website. Needle Engine ensures that your project is as small and fast as possible by using the latest compression techniques such as KTX2, Draco, and Meshopt. Learn more about Optimization & Compressionarrow-up-right.

Quick Start: Choose Your Platform

Pick a hosting platform that fits your needs:

  • Needle Cloudarrow-up-right – Official Needle hosting. Great for all kinds of spatial web apps and 3D assets.

  • Netlify – Professional hosting with custom domains and CI/CD.

  • Vercel – Optimized platform for frontend developers with excellent performance.

  • GitHub Pages – Free static hosting, great for open source projects.

  • itch.io – Perfect for games and interactive experiences.

  • Facebook Instant Games – Reach users on Facebook and Messenger.

  • FTP Upload – Deploy directly to any server with FTP/SFTP support.

  • Build to Folder – Upload manually to any web server or hosting service.

  • Glitch (Deprecated) – Glitch has discontinued their hosting service.

:::tip Need Help? Can't find what you're looking for? Let us know in our forumarrow-up-right! :::


Deployment Options

Deploy to Netlify

Professional hosting with custom domains, automatic HTTPS, and continuous deployment.

:::details Unity: Deploy to Netlify Add the DeployToNetlify component to your scene and follow the instructions. You can create new projects or deploy to existing ones with a single click.

:::

Deploy to Vercel

Optimized platform for frontend developers with excellent performance and DX.

Setup:

  1. Create a new project on Vercel

  2. Add your web project to a GitHub repository

  3. Connect the repository to your Vercel project

See our Next.js sample projectarrow-up-right for configuration reference.

Deploy to itch.io

Perfect for games and interactive experiences with a built-in community.

:::details Unity: Deploy to itch.io step-by-step

  1. Create a new project on itch.ioarrow-up-right

  2. Set Kind of project to HTML itch.io Project Type

  3. Add the DeployToItch component to your scene and click Build Deploy to itch Component

  4. Wait for the build to finish. It will open a folder with the final zip

  5. Upload the final zip to itch.io Upload to itch.io

  6. Select This file will be played in the browser Browser Playback

  7. Save your itch page and view the project page Your Needle Engine project should now load! 😊

Optional settings:

Optional Settings

:::

:::details Troubleshooting: Failed to find index.html Failed to find index.html error

If you see this error, make sure you're not uploading a gzipped index.html.

Fix: Disable gzip compression in vite.config.js in your Needle web project folder. Remove the line with viteCompression({ deleteOriginFile: true }), rebuild, and upload to itch. :::

Deploy to GitHub Pages

Free static hosting, perfect for open source projects and documentation.

:::details Unity: Deploy to GitHub Pages

Add the DeployToGithubPages component to your scene and copy-paste your GitHub repository URL or GitHub Pages URL.

:::

Troubleshooting GitHub Pages

Deployed but website is not live:

  • First deployment can take a few minutes. Check the Actions tab on GitHub (/actions) to see deployment progress.

  • If not live after a few minutes or no workflow appears in Actions, go to Settings → Pages (/settings/pages) and ensure Branch is set to gh-pages.

Deploy to Facebook Instant Games

Reach users on Facebook and Facebook Messenger with instant-loading games.

No manual adjustments required – Needle Engine handles everything automatically.

:::details Unity: Deploy to Facebook Instant Games

  1. Add the Deploy To Facebook Instant Games component to your scene

  2. Click Build For Instant Games

  3. After the build finishes, you'll get a ZIP file to upload to your Facebook app

  4. On Facebook, add the Instant Games module and go to Instant Games → Web Hosting

  5. Upload your zip using Upload version (1). After processing, click Stage for testing (2) or Push to production (star icon)

  6. Click the Play button next to each version to test your game on Facebook

:::

:::details How to create a Facebook app with Instant Games

  1. Create a new apparrow-up-right and select Other, then click Next

  2. Select type Instant Games

  3. After creating the app, add the Instant Games product

See the official Instant Games documentationarrow-up-right for more details.

Note: You only need to create the app – Needle Engine handles all technical requirements automatically. :::

Deploy to Glitch 🎏

:::warning Deprecated - Service Discontinued Glitch has discontinued their hosting service. This deployment option is no longer available.

Alternatives:

Deploy to FTP

Deploy directly to any server with FTP or SFTP support.

:::details Unity: Deploy to FTP server

  1. Add the DeployToFTP component to a GameObject in your scene (Best practice: add it to the same GameObject as Needle Engine)

  2. Assign an FTP server asset and fill in server, username, and password Get these credentials from your hosting provider when you create an FTP account

  3. Click Build & Deploy to build and upload to your FTP account

Deploy to FTP component

FTP Server asset containing access information

Deploy To FTP component with server asset assigned. You can deploy to a subfolder using the path field

:::

:::details Manual FTP deployment

  1. Open File → Build Settings, select Needle Engine, and click Build

  2. Wait for the build to complete – the dist folder will open automatically

  3. Copy the files from the dist folder to your FTP storage

That's it! 😉

Dist Folder

Troubleshooting:

Website doesn't work after upload: Your web server may not support serving gzipped files.

Option 1: Enable gzip compression on your server using a .htaccess file (see below) Option 2: Turn off gzip compression in build settings at File → Needle Engine → Build Window

Build errors during compression: Please report the bug! To get unstuck immediately, toggle Development Build on in Build Settings.

:::

Enabling gzip using a htaccess file

Create a file named .htaccess in your upload folder (or parent folder) with this content:

Upload the .htaccess file to your server.


Build To Folder

Build your project locally for manual upload to any web server or hosting service.

When using our default Vite template, the build output folder is <webproject>/dist.

Unity: Access Build Options

Open File → Needle Engine → Build Window:

Available Options:

  • Build to Disk – Create production build in the dist folder

  • Preview Build – Build and start a local server to preview the final result

  • Development Build – Disable compression for debugging (not recommended for production)

Learn more: Optimization & Compressionarrow-up-right - Build types, compression options, and best practices

:::tip Node.js is only required during development The distributed website (using our default Vite template) is a static page that doesn't rely on Node.js and can be hosted on any regular web server.

Node.js is only required if you want to run our minimalistic networking server for multiplayer experiences. :::

Advanced Topics

Cross-Platform Deployment Workflows

You can create Unity projects that build to both Needle Engine and regular Unity platforms (Desktop, WebGL, etc.). Our component mapping approach means no runtime logic is modified in Unity.

Using Unity Play Mode:

In Project Settings → Needle Engine, toggle Override Play Mode and Override Build Settings to switch between Needle's build process and Unity's build process:

Unity Play Mode Settings

:::tip Dual Platform Development This approach may require duplicate code (C# for Unity, TypeScript for Needle Engine). The amount of extra work depends on your project complexity. :::

Needle Engine Command Line Arguments for Unity

Needle Engine for Unity supports command-line arguments for batch exports and builds.

Available Options:

Argument
Description

-scene

Path to a scene or asset to export Example: Assets/path/to/myObject.prefab or Assets/path/to/myScene.unity

-outputPath <path>

Set the output path for the build Example: -outputPath path/to/output.glb

-buildProduction

Run a production build

-buildDevelopment

Run a development build

-debug

Open a console window for debugging

Example Usage:


Next Steps

Optimize Your Build:

Learn More:

Get Help:

Last updated