Local Hosting
If you are on a paid Pro or Enterprise plan, you gain the ability to host WebAR projects on your own web servers.
Serving web app locally from your computer can be tricky as browsers require HTTPS certificates to
access the camera on your phone through a browser. As a convenience, 8th Wall has created a public
GitHub repo (https://github.com/8thwall/web) where you can find a serve
script that will run a
local https webserver on your development computer. You can also download sample 8th Wall Web
projects to help you get started with self-hosted projects.
Locally From Mac
- Install Node.js and npm
If you don't already have Node.js and npm installed, get it here: https://www.npmjs.com/get-npm
- Open a terminal window (Terminal.app, iTerm2, etc):
cd <directory_where_you_saved_sample_project_files>
cd serve
npm install
cd ..
./serve/bin/serve -d <sample_project_location>
Example:
./serve/bin/serve -n -d gettingstarted/xraframe/ -p 7777
IMPORTANT: To connect to this local webserver, make sure to copy the entire "Listening" URL into your browser, including both the "https://" at the beginning and port number at the end.
NOTE: If the serve script states it's listening on 127.0.0.1:<port> (which is the loopback
device aka "localhost") your mobile phone won't be able to connect to that IP address directly.
Please re-run the serve
script with the -i
flag to specify the network interface the serve
script should listen on.
Example - specify network interface
./serve/bin/serve -d gettingstarted/xraframe/ -p 7777 -i en0
If you have issues connecting to the local webserver running on your computer, please refer to the troubleshooting section
Locally From Windows
Serving web app locally from your computer can be tricky as browsers require HTTPS certificates to access the camera on your phone through a browser. As a convenience, 8th Wall has created a public GitHub repo (https://github.com/8thwall/web) where you can find a "serve" script that will run a local https webserver on your development computer. You can also download sample 8th Wall Web projects to help you get started.
- Install Node.js and npm
If you don't already have Node.js and npm installed, get it here: https://www.npmjs.com/get-npm
- Open a Command Prompt (cmd.exe)
Note: Run the following command using a standard Command Prompt window (cmd.exe). The *script will generate errors if run from PowerShell.
cd <directory_where_you_saved_sample_project_files>
cd serve
npm install
cd ..
serve\bin\serve.bat -d <sample_project_location>
Example:
serve\bin\serve.bat -n -d gettingstarted\xraframe -p 7777
IMPORTANT: To connect to this local webserver, make sure to copy the entire "Listening" URL into your browser, including both the "https://" at the beginning and port number at the end.
NOTE: If the serve script states it's listening on 127.0.0.1:<port> (which is the loopback
device aka "localhost") your mobile phone won't be able to connect to that IP address directly.
Please re-run the serve
script with the -i
flag to specify the network interface the serve
script should listen on.
Example - specify network interface:
serve\bin\serve.bat -d gettingstarted\xraframe -p 7777 -i WiFi
If you have issues connecting to the local webserver running on your computer, please refer to the troubleshooting section
View Project on iOS Safari
- The “serve” command run in the previous step will display the IP and Port to connect to
- Open Safari on iOS 11+, and connect to the “Listening” URL. Note: Safari will complain about the SSL certificates, but you can safely proceed.
IMPORTANT: Make sure to copy the entire "Listening" URL into your browser, including both the "https://" at the beginning and port number at the end.
Example: https://192.168.1.50:8080
- Click "visit this website":
- Click "Show Details":
- Click "Visit Website":
- Finally, click "Allow" to grant camera permissions and start viewing the sample AR experience:
View Project on Android
- The “serve” command run in the previous step will display the IP and Port to connect to
- Open Chrome, a Chrome-variant (e.g. Samsung browser) or Firefox
IMPORTANT: Make sure to copy the entire "Listening" URL into your browser, including both the "https://" at the beginning and port number at the end.
Example: https://192.168.1.50:8080
- Chrome Example: The browser will complain that the cert is invalid, simply click
'ADVANCED'
to proceed:

- Click "PROCEED TO ... (UNSAFE)":
