🚀 Project GET — v1.0

IoT Sensor Management System

Full-stack monorepo with Next.js 16 frontend and Express.js backend — designed for real-time IoT device monitoring and management.

Download Source ZIP View on GitHub
Production Ready — Last updated December 4, 2025 Hosted at get.manoftheworld.xyz
Frontend
Next.js 16
🔌
Backend
Express.js
🐳
Container
Docker
☁️
Hosting
AWS Amplify / S3
📡
Architecture
Monorepo

🎯 Overview

This is a full-stack IoT sensor management system built as a monorepo. The frontend is a Next.js 16 static export optimized for deployment on AWS Amplify or S3, while the backend is a standalone Express.js API deployable anywhere. Both services are fully decoupled, making them independently scalable and deployable.

✨ Features

📟

Device Management

Control and configure IoT devices with a centralized dashboard. Add, update, and remove devices in real-time.

📈

Sensor Monitoring

Real-time sensor data visualization with live charts and historical trend analysis across all connected sensors.

🌤️

Weather Widget

Integrated weather data display providing environmental context alongside your IoT sensor readings.

🛠️

Admin Dashboard

Full administrative control panel for system management, user configuration, and system health monitoring.

📱

Responsive UI

Fully responsive interface built with Tailwind CSS — works seamlessly on mobile, tablet, and desktop.

🚀

Production Ready

Static export with CORS-enabled API, Dockerized for easy deployment, and ready for cloud hosting.

📁 Project Structure

iot-sensor-management/ ├── 📂 backend/ # Express.js API (port 5000) │ ├── server.js │ ├── package.json │ └── README.md ├── 📂 frontend/ # Next.js Frontend (port 3000) │ ├── app/ │ ├── components/ │ ├── lib/ │ ├── package.json │ └── README.md ├── start-dev.bat # Run both services (Windows) ├── start-dev.sh # Run both services (Unix) ├── docker-compose.yml # Docker dev environment ├── amplify.yml # AWS Amplify config └── 📖 Documentation/ ├── README.md ├── QUICKSTART.md ├── SETUP.md ├── STATUS.md └── API_TESTING.md

🔌 Running Services

Service Port URL Start Command Status
Frontend 3000 http://localhost:3000 cd frontend && npm run dev ✅ Active
Backend API 5000 http://localhost:5000 cd backend && npm start ✅ Active

🚀 Quick Start

# ── Using Docker (recommended) ────────────────── docker-compose up --build # ── macOS / Linux ────────────────────────────── chmod +x start-dev.sh ./start-dev.sh # ── Manual ───────────────────────────────────── # Terminal 1 — Backend cd backend && npm start # Terminal 2 — Frontend cd frontend && npm run dev # Open browser http://localhost:3000

🧪 Quick API Test

# Health Check curl http://localhost:5000/health # Get all devices curl http://localhost:5000/api/devices # Get sensor readings curl http://localhost:5000/api/sensors

🚢 Deployment Options

☁️

AWS Amplify (Frontend)

Build with npm run build, push to GitHub, connect Amplify — uses amplify.yml automatically.

🐳

Docker (Both)

Run docker-compose up --build to spin up both frontend and backend services instantly.

🌐

Render / Heroku (Backend)

Set NEXT_PUBLIC_API_URL env var to your deployed backend URL and deploy as a web service.

⚙️

AWS EC2 / VPS

Deploy backend on any server. Frontend static files can be served from Nginx, S3, or Cloudflare Pages.

📚 Documentation

QUICKSTART.md
Fast setup guide to get running immediately
📖
SETUP.md
Detailed installation & deployment guide
🔌
API_TESTING.md
All API endpoints with request/response examples
📊
STATUS.md
Current system status and health information

📦 Tech Stack

⚡ Next.js 16 ⚛️ React 19 🟢 Node.js 20+ 🚂 Express.js 🎨 Tailwind CSS 🐳 Docker ☁️ AWS Amplify ☁️ AWS Lambda / EC2 📡 IoT Sensors 🔌 REST API

🐛 Troubleshooting

🔴 API not connecting?

Check backend is running: curl http://localhost:5000/health
Verify .env.local in the frontend folder. Open DevTools Console for errors.

🔴 Port already in use?

macOS/Linux: lsof -i :5000 | awk '{print $2}' | xargs kill
Windows: Get-NetTCPConnection -LocalPort 5000 | Stop-Process

Ready to build?

Download the full source code or explore the repository on GitHub.

Download ZIP View on GitHub