Use this file to briefly explain your design decisions. Bullet points are fine.
- Summary of your API structure and main routes (paths, methods, and what they return):
- How clients should use your metadata route(s) vs your data route(s) (and streaming, if implemented):
- Confirm you did not modify the emulator service (
emulator/) or itssensor-config.json. If you needed to work around anything, note it here: y/N
- Where your final OpenAPI spec lives and how to view or use it (e.g. Swagger UI):
- What you chose to test and any notable error-handling decisions:
- How you detect invalid readings from the emulator stream:
- What you do with invalid data (drop, log, count, etc.) and why:
- How you use the valid-range table (sensor name or sensorId → min/max) and count out-of-range readings per sensor in a 5-second window:
- How you log the timestamp and error message (including sensor) when a sensor exceeds the threshold (>3 out-of-range in 5 s):
Use this section to briefly explain your frontend design decisions. Bullet points are fine.
- Link to your low-fidelity Figma mockup and what it shows:
- Why you structured the dashboard the way you did:
- How you use
/sensorsand/telemetry(and WebSocket, if used):
- Choices around colours, typography, states, and responsiveness:
- Anything you would do with more time or a different stack: