This is the visualization system used by ModTech CONNECT, the advanced IIoT platform for enabling connectivity and data insights for Delta ModTech machines.
See this notice document for details on the licensing and third-party components used in this project.
- Node.js LTS - Download here
- Go 1.25+ - Install in WSL:
wget https://go.dev/dl/go1.25.6.linux-amd64.tar.gz && sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.25.6.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin - WSL2 or Linux - Install instructions For WSL2
- 32GB+ RAM recommended - Building is resource intensive
Run everything in WSL2 or Linux terminal:
# Clone the repo
git -c http.sslVerify=false clone https://github.com/Delta-ModTech/mtc-visualization.git
cd mtc-visualization
# Install frontend dependencies
corepack enable
yarn install
# Build backend (required once, ~20 min)
make build-goUse this when actively developing. Frontend changes appear instantly via hot reload.
# Terminal 1 - Backend
make run
# Terminal 2 - Frontend with hot reload
yarn startAccess at http://localhost:3000 (login: admin/admin)
- ✅ Frontend changes auto-reload instantly
⚠️ Backend (.go) changes require restartingmake run
Use this to create a final build for deployment. Does NOT hot reload.
# Build production frontend bundle
yarn build
# Run backend (serves static files from public/build/)
make runNote: After
yarn build, you may need to hard refresh your browser (Ctrl+Shift+R) to see changes due to caching.
Requires Docker with containerd enabled. Enable containerd
# One-time setup: create multi-platform builder
docker buildx create --name builder --use
# Emulator setup for building other architectures (arm64)
docker run --privileged --rm tonistiigi/binfmt --install all
# Build images (amd64 + arm64, ~25 min)
sudo make build-docker-full
# Tag the image for the release version in addition to the 'latest' tag (replace <version> with actual version)
docker tag <image>:latest <image>:<version>
# Login to registry
docker login <your_registry_location>
# Push to registry
docker push <your_registry_location> --all-tags
# Clean up local images so you don't re-push old versions by mistake (next time you build)
docker image prune -a2024-2026 Delta ModTech
