40rbidd3n/Hydro0x01
40rbidd3n/Hydro0x01 has 553 GitHub stars and 101 forks. GitHot measured +2 in 7 days. Last checked 2026-11-11 04:18 UTC. Last push 2026-10-31.
Secure, production-grade IoT hydroponic automation system with ESP32, MQTT telemetry, and real-time dashboard
What you can do
- Real-Time Environment Monitoring: High-precision tracking of pH, EC, water level, temperature, and humidity.
- Automated Actuator Control: Smart relays for dosing pumps, main circulation, grow lights, and ventilation.
- Secure Architecture: Async MQTT with TLS, offline robust modes, and RSA-2048 Signed OTA updates.
- Edge-First Local Dashboard: Lightning fast React SPA communicating over real-time WebSockets to a Fastify backend.
Measured star growth
- in 24h
- Update delayed
- in 7 days
- +2
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Original
Production-Grade Open Source IoT Hydroponic Control System
HydroponicOne is a robust, modular, and professional-grade hydroponic monitoring and control system. It aims to bridge the gap between hobbyist DIY setups and expensive industrial automation. Featuring a modern tech stack including MQTT, InfluxDB telemetry, and a sleek React-based dashboard.
![]()
✨ Features
- Real-Time Environment Monitoring: High-precision tracking of pH, EC, water level, temperature, and humidity.
- Automated Actuator Control: Smart relays for dosing pumps, main circulation, grow lights, and ventilation.
- Secure Architecture: Async MQTT with TLS, offline robust modes, and RSA-2048 Signed OTA updates.
- Edge-First Local Dashboard: Lightning fast React SPA communicating over real-time WebSockets to a Fastify backend.
- Enterprise Data Management: PostgreSQL for persistent config state and InfluxDB for time-series telemetry.
🏗 System Architecture
| Layer | Stack |
|---|---|
| Frontend | React 19, Vite, Tailwind CSS, Recharts, Zustand, Lucide Icons |
| Backend | Node.js, Fastify, Prisma ORM, Socket.io |
| Database | PostgreSQL (relational), InfluxDB (time-series) |
| Firmware | C++ / Arduino, PlatformIO, Async MQTT |
| DevOps | Docker support, GitHub Actions, Secure OTA deployment |
🛠 Prerequisites
Ensure you have the following installed before proceeding:
- Node.js (v20+ recommended)
- PostgreSQL (v14+)
- InfluxDB (v2.0+)
- MQTT Broker (Mosquitto/HiveMQ)
- ESP32 Development Board
- PlatformIO IDE
⚡ Quickstart & Installation
1. Clone the repository
git clone https://github.com/40rbidd3n/Hydro0x01.git
cd HydroponicOne
2. Setup Backend Configure the environment and seed the database.
cd backend
npm install
cp .env.example .env
# Edit .env with your DB credentials and set JWT_SECRET using: openssl rand -base64 32
npx prisma db push
npm run dev
JWT_SECRET is required and must contain at least 32 characters. The backend
rejects missing, blank, short, or previously published example secrets.
Generate a secret once per installation and keep the same value across restarts;
changing it invalidates existing tokens.
For Docker deployments, save the generated secret as JWT_SECRET=<your secret>
in docker/.env (ignored by Git), then run from the repository root:
docker compose -f docker/docker-compose.yml up -d --build
Compose requires a non-empty JWT_SECRET from docker/.env or your shell.
3. Setup Frontend
cd ../frontend
npm install
cp .env.example .env
npm run dev
4. Build & Flash Firmware Review the Hardware Setup and connect your sensors to the ESP32.
cd ../firmware
# IMPORTANT: Clone the configuration template before compiling
cp include/config.example.h include/config.h
# Edit include/config.h with your network and MQTT details
# Edit platformio.ini to choose your hardware environment (e.g., env:esp32_dht_bmp)
pio run -t upload
📖 Documentation
Explore our comprehensive guides located in the docs/ folder:
| # | Guide | Description |
|---|---|---|
| 1 | System Overview | How everything connects |
| 2 | Hardware Setup | Wiring diagrams and assembly |
| 3 | Firmware Guide | Configuration and flashing |
| 4 | Integration Guide | Home Assistant, Telegram & Discord |
| 5 | Calibration Guide | Sensor tuning procedures |
| 6 | Troubleshooting | Common issues and fixes |
| 7 | API Reference | REST API documentation |
| 8 | MQTT Guide | Topics and payload specifications |
| 9 | Security & OTA | Firmware signing and RSA keys |
🚑 Troubleshooting
- Database Errors: Ensure you have run
npx prisma generateand your credentials in.envare accurate. - MQTT Connectivity: Ensure you are using
mqtts://if using port 8883, and check your base topic. - Sensor Readings: Refer to Troubleshooting Docs for I2C and ADC calibration solutions.
🚀 Releases & Changelog
All code modifications and versioning are strictly documented. Check the CHANGELOG.md for version histories or the GitHub Releases page to download pre-compiled bins and read full production release notes.
🤝 Contributing & Community
We actively welcome community contributions to improve HydroponicOne! Please see our Contributing Guidelines and our Code of Conduct before submitting pull requests.
🗺️ Future Roadmap
We have an extensive development plan ranging from LoRa Master/Slave setups to AI diagnostics. View the complete Development Roadmap to see where we are heading.
📄 License
This project is licensed under the MIT License. See the LICENSE file for more details.
💬 Support & Contact
If you have a feature request or found a bug, please use the GitHub Issue Tracker.
Built with ❤️ for the future of sustainable farming.
Explore related projects
n8n-io/n8n
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
210,077 starslanggenius/dify
Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.
160,773 starsmicrosoft/PowerToys
Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows
140,833 starsstablyai/orca
Orca is the place for working with a fleet of agents (e.g. Grok Bot, Claude Code). Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.
121,741 stars