HydroByte es una aplicación de escritorio moderna para el monitoreo en tiempo real de sistemas hidropónicos. Permite visualizar el estado de sensores, consultar gráficas históricas, recibir alertas y personalizar la experiencia visual mediante temas claro/oscuro.
- Visualización en tiempo real de sensores (pH, EC, temperatura, nivel de agua)
- Gráficas interactivas y submenús temáticos
- Gestión de alertas y notificaciones
- Cambio de tema (claro/oscuro) en toda la interfaz
- Barra lateral con navegación modular
- Ícono y branding personalizados
git clone https://github.com/elizaldi14/HydroByte.git
cd HydroBytepython -m venv venv
# Activa el entorno:
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activatepip install -r requirements.txtpython main.py- Python 3.12+
- PySide6
- pyqtgraph
HydroByte/
├── app/
│ ├── main_window.py
│ ├── widgets/
│ │ ├── sensor_card.py
│ │ ├── chart_widget.py
│ │ ├── sidebar.py
│ │ └── ...
│ └── ...
├── utils/
│ └── img/
│ ├── logo_pi.png
│ └── logo_pi.ico
├── main.py
├── requirements.txt
└── README.md
- main.py: Punto de entrada de la app.
- app/main_window.py: Lógica principal y gestión de temas.
- app/widgets/: Componentes visuales reutilizables (cards, sidebar, charts, etc).
- utils/img/: Recursos gráficos (íconos y logos).
- Cambia el logo en
utils/img/logo_pi.pngy/ologo_pi.ico. - Modifica los temas en
theme_manager.py.
MIT
- Sidebar: Barra lateral con navegación y submenús para gráficas.
- SensorCard: Tarjetas para mostrar datos de sensores, rango óptimo y estado (Activo/Inactivo).
- ChartWidget: Gráficas interactivas para cada sensor.
- Alertas: Cards y tabla con alertas recientes.
El cambio de tema es global y afecta todos los componentes, incluidas subpáginas y menús.
Cada tarjeta de sensor muestra su estado (Activo/Inactivo) con color verde/rojo según corresponda.
Para que el ícono se muestre en la barra de tareas de Windows, compila el proyecto con PyInstaller:
pip install pyinstaller
pyinstaller --onefile --windowed --icon=utils/img/logo_pi.ico main.pyEl ejecutable estará en dist/main.exe.
¿Dudas, sugerencias o mejoras? ¡Abre un issue o pull request en GitHub!
