Gas Monitor Web App Build - 18/09/2025 17:25 EDT

Job ID: 39803518

Budget: $750 – $1,500 USD

I need a production-ready web application that lets each of my gas-monitoring sites log in, send JSON payloads over Mosquitto MQTT, and store that data in a SQL back-end. From there the app must display live and historical readings in clear charts while giving every customer access only to the records that belong to their own site.

Core stack
• Front-end: React.js (your choice of TypeScript or plain JS)
• Back-end: any Node-compatible framework that pairs well with React and exposes a clean REST or GraphQL API
• Database: relational (PostgreSQL, MySQL or similar) with tables structured so we can segment data per customer / per site
• Ingest: MQTT listener that subscribes to our Mosquitto broker, parses the incoming JSON, and commits it to the database

Required functionality
1. Secure user authentication with role-based access (admin vs. site user)
2. Real-time and historical data visualisation—line graphs, alarms and basic analytics
3. REST / GraphQL endpoints so we can integrate the same data with other internal tools
4. Administrative screen to add new sites, manage credentials and map MQTT topics to database tables

Acceptance criteria
• I can create a new customer, assign a site topic and immediately see data populating.
• A user from that customer can log in and view only their site’s readings.
• The dashboard loads in <2 s with at least one day of data.
• Code is delivered in a Git repo with README and environment variables templated in .env.example.

Let me know your preferred database, any libraries you like for charts (e.g., Recharts, Chart.js, D3) and how you plan to handle live updates (websockets, SSE, long polling). I’m ready to start as soon as we agree on the architecture.