Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/diarpicu2022-commits/frontend-AgroPulse/llms.txt

Use this file to discover all available pages before exploring further.

The Dashboard is the primary view in AgroPulse. It shows the latest readings from every physical sensor attached to the selected greenhouse, a live temperature chart built from the last 20 readings, and a panel of recent backend alerts. The page refreshes automatically every 5 seconds; you can also force an immediate refresh with the Actualizar button.

Greenhouse selector

A dropdown at the top of the page lists every greenhouse you have access to. Operator accounts only see the greenhouses an admin has explicitly assigned to them. Admin accounts see all greenhouses. Switching the selector immediately clears the current readings and loads data for the new selection. When a greenhouse has a linked ESP32, its device ID is shown as a badge next to the selector.

Sensor cards

One card is rendered per physical sensor (keyed by sensorId, not by type). The latest reading for each sensor is displayed with its label, value, unit, and—when an active crop profile is loaded—colour-coded min/max range indicators.

Temperature (internal)

Type TEMPERATURE_INTERNAL — interior air temperature in °C.

Temperature (external)

Type TEMPERATURE_EXTERNAL — exterior air temperature in °C.

Humidity (interior)

Type HUMIDITY — interior relative humidity in %.

Humidity (exterior)

Type HUMIDITY_EXTERNAL — exterior relative humidity in %.

Soil moisture

Type SOIL_MOISTURE — volumetric soil moisture in %.

Light

Type LIGHT — illuminance in lux (lx).

CO₂

Type CO2 — carbon dioxide concentration in ppm.

Live temperature chart

When temperature readings are available, the Dashboard plots the last 20 data points as a line chart. The X-axis shows the time of each reading (formatted in the America/Bogota timezone); the Y-axis auto-scales to the data range. The chart prefers TEMPERATURE_INTERNAL over TEMPERATURE and TEMPERATURE_EXTERNAL, using the first type it finds in the current reading set.

Auto-generated alerts

Every time the page polls the backend, AgroPulse compares the latest sensor readings against the min/max thresholds defined in the currently active crop profile. When a value crosses a boundary, an alert is generated immediately in the browser and persisted to the backend via alertRepository.create.
Sensor typeCondition checked
TEMPERATURE_*Value below crop.temp_min or above crop.temp_max
HUMIDITYValue below crop.humidity_min or above crop.humidity_max
SOIL_MOISTUREValue below crop.soil_moisture_min or above crop.soil_moisture_max
Auto-alerts are shown in a dismissible banner at the top of the page. Dismissing a banner removes it from the local view only; the alert record remains in the backend. Alerts generated by the backend’s own rules engine are shown separately in the Recent Alerts panel at the bottom of the page (up to 5, newest first).
Auto-alerts are only generated when an active crop profile exists for the account. If no crop is marked active, threshold comparisons are skipped.

3D greenhouse preview

A decorative 3D render of the greenhouse structure is displayed in the hero area at the top of the page alongside the name of the selected greenhouse and the count of active sensors. This is a static visual element and does not reflect real-time state.

Build docs developers (and LLMs) love