๐Ÿ

MeshCore Canada โ€” Local Server

โ† Home

๐Ÿ–ฅ๏ธ Kiosk Setup

Run a local MeshCore Canada display node on a Raspberry Pi, mini PC, or any computer.
The local server serves the emergency display page on your local network โ€” alerts sync from the cloud, and the display keeps working offline using cached data.

REQUIREMENTS

What you need

โœ“ Node.js 18+ โœ“ Internet (for sync) Optional: MeshCore device

The local server is a lightweight Node.js app (~2 MB). It runs on Raspberry Pi 3/4, Windows, Linux, or macOS. No cloud account required for display-only mode.

STEP 1

Enter your city info

Fill in your city and province to generate a configured setup script.

STEP 2

Install & run

Run these commands in a terminal:

# Install Node.js if needed
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs

# Download and start the local server
curl -fsSL https://ecommesh.live/local-server.js -o meshcore-local.js
node meshcore-local.js --city="Calgary" --province="AB" --port=3001 --cloud="https://ecommesh.live"

Then open http://localhost:3001 in Chrome kiosk mode:

chromium-browser --kiosk --noerrdialogs "http://localhost:3001/display"

๐Ÿ’ก To start on boot: pm2 start meshcore-local.js -- --city="Calgary" --province="AB"

Run in PowerShell or Command Prompt:

# Download local server script
Invoke-WebRequest "https://ecommesh.live/local-server.js" -OutFile "meshcore-local.js"

# Run it
node meshcore-local.js --city="Calgary" --province="AB" --port=3001

Then open the kiosk:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk --noerrdialogs "http://localhost:3001/display"

โš ๏ธ Install Node.js from nodejs.org if not already installed.

Use Docker for a fully isolated setup:

docker run -d \
  --name meshcore-local \
  --restart unless-stopped \
  -p 3001:3001 \
  -e CITY="Calgary" \
  -e PROVINCE="AB" \
  -e CLOUD_URL="https://ecommesh.live" \
  node:18-alpine \
  sh -c "wget -qO- https://ecommesh.live/local-server.js > /app.js && node /app.js"

Then navigate to http://YOUR-PI-IP:3001/display on any browser on your network.

STEP 3

How the local server works

The local server runs a small HTTP proxy that:

๐Ÿ“ฅ Download local-server.js    ๐Ÿ‘ Preview Display