0a1b7c31e2f67ce10f9cd97c50bf28abd432655c
Main.jsx now parses readings through the selected protocol rather than an inline regex, shows one Measure button instead of separate tare and gross, and colours the live weight green when the scale reports stable and red while it moves. A reading with no stability marker counts as unstable, so an unrecognised format fails safe. While only one weighing exists it appears as "First weighing" rather than filling in the Tare card, because a lighter second reading can still move it to gross and a value visibly jumping between cards would read as a bug. Header gains admin links to the scale monitor and licence screens. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
ScalesApp - Multi-Component Application
A distributed application consisting of three main components:
Architecture
1. Frontend (React)
- Location:
/frontend - Description: React web application that displays real-time data from the serial port
- Communicates with: Django backend via REST API
- Port: 3000 (default)
2. Backend (Django)
- Location:
/backend - Description: Django REST API server for storing and retrieving serial data
- Database: SQLite (configurable)
- Port: 8000 (default)
3. Serial Bridge (Python)
- Location:
/serial_bridge - Description: Python application that reads data from COM ports
- Features: System tray integration, runs as EXE (via PyInstaller)
- Communicates with: Django backend via REST API
- Data Flow: COM Port → Serial Bridge → Django Backend → React Frontend
Installation & Setup
Prerequisites
- Node.js 16+ (for React)
- Python 3.8+ (for Django and Serial Bridge)
- pip or conda for Python packages
Quick Start
-
Backend Setup
cd backend python -m venv venv venv\Scripts\activate pip install -r requirements.txt python manage.py migrate python manage.py runserver -
Frontend Setup
cd frontend npm install npm start -
Serial Bridge Setup
cd serial_bridge python -m venv venv venv\Scripts\activate pip install -r requirements.txt python app.py
Data Flow
COM Port
↓
Serial Bridge (Python)
↓
Django Backend REST API
↓
React Frontend
Configuration
Each component has its own configuration file:
- Frontend:
.env - Backend:
settings.pyand.env - Serial Bridge:
config.pyand.env
Development Tips
- Keep all three services running during development
- Use
CORSheaders properly in Django for frontend requests - Serial Bridge should continuously read COM data and POST to backend
- Frontend should poll/subscribe to backend for updates
Description
VehicleScales app with Django and React. It has a python service reading from comport and forwarding data to frontend via sse
Languages
JavaScript
62.1%
Python
23.8%
CSS
13.8%
Dockerfile
0.1%