Fire hydrant flow testing and management platform built by water operators for water operators
HydrantHub eliminates the tedious spreadsheets and outdated desktop software that water utilities use for fire hydrant flow testing. Built specifically for water operators, municipalities, fire departments, and testing contractors who need NFPA 291 compliant flow testing.
- Save 25 minutes per test - Reduce documentation from 30 minutes to 5 minutes
- Ensure NFPA 291 compliance - Automatic calculations and standardized reporting
- Eliminate calculation errors - Built-in formulas with real-time validation
- Real-time collaboration - Fire departments get instant access to hydrant data
- Mobile-first design - Test in the field, sync when back online
- Node.js 18+ and npm
- PostgreSQL 14+ with PostGIS extension
- Git
- Docker (optional, for easy setup)
# Clone the repository
git clone https://github.com/rcabral85/hydrant-hub.git
cd hydrant-hub
# Start all services with Docker Compose
docker-compose up
# Visit http://localhost:5173 for frontend
# API available at http://localhost:5002git clone https://github.com/rcabral85/hydrant-hub.git
cd hydrant-hub# Create database and load schema
psql -U postgres -c "CREATE DATABASE hydrantdb;"
psql -U postgres -d hydrantdb -c "CREATE EXTENSION postgis;"
psql -U postgres -d hydrantdb -f database/schema.sqlcd backend
npm install
# Create environment file
cp .env.example .env
# Edit .env with your database credentials
# Start development server
npm run devcd frontend
npm install
# Start Vite dev server
npm run devπ Visit http://localhost:5173 to see HydrantHub running locally!
- Hydrant Inventory Management - GPS coordinates, asset details, maintenance history
- NFPA 291 Flow Testing - Automated calculations with outlet coefficient validation
- Interactive Mapping - Color-coded hydrants by flow class (AA, A, B, C)
- PDF Report Generation - Professional reports for municipal compliance
- User Authentication - Role-based access for operators, supervisors, fire departments
- Mobile App - Offline-capable React Native app with QR code scanning
- Inspection Module - Visual inspections with photo uploads and pass/fail logic
- Scheduling System - Automated reminders for annual testing requirements
- Advanced Analytics - Water supply curve analysis and system performance metrics
- SCADA Integration - Real-time pressure data from water distribution systems
- GIS Integration - Import/export with ArcGIS, QGIS, and municipal GIS systems
- API Integrations - Connect with CMMS, work order systems, and fire department CAD
- White-label Solution - Custom branding for engineering consultants
- Node.js + Express.js - RESTful API server
- PostgreSQL + PostGIS - Spatial database for hydrant locations
- JWT Authentication - Secure user sessions
- bcrypt - Password hashing
- React 18 + Vite - Modern UI framework with fast HMR
- Material-UI (MUI) - Professional component library
- Leaflet Maps - Interactive mapping with custom markers
- Chart.js - Water supply curve visualization
- Axios - API client
- React Native - Cross-platform iOS/Android app
- AsyncStorage - Offline data persistence
- Camera API - Photo capture for inspections
- GPS/Location Services - Auto-capture coordinates
- Docker - Containerized deployments
- GitHub Actions - CI/CD pipeline
- Railway - Cloud hosting
- Cloudflare - CDN and security
HydrantHub implements the complete NFPA 291 standard for fire hydrant flow testing:
Q = 29.83 Γ c Γ dΒ² Γ βP
Where:
- Q = Flow rate (GPM)
- c = Outlet coefficient (0.80-0.95)
- d = Outlet diameter (inches)
- P = Pitot pressure (PSI)
Q_R = Q_F Γ (P_R/P_F)^0.54
Where:
- Q_R = Available flow at residual pressure
- Q_F = Total flow during test
- P_R = Required residual pressure (typically 20 PSI)
- P_F = Actual residual pressure during test
- Class AA: β₯1,500 GPM @ 20 PSI residual
- Class A: 1,000-1,499 GPM @ 20 PSI residual
- Class B: 500-999 GPM @ 20 PSI residual
- Class C: <500 GPM @ 20 PSI residual
- Water Utilities (30+ GTA municipalities, 400+ Ontario-wide)
- Fire Departments (Co-purchasing with municipalities)
- Testing Contractors (Trident Systems and competitors)
- Engineering Consultants (White-label opportunities)
- Phase 1: Greater Toronto Area (GTA)
- Phase 2: Ontario municipalities
- Phase 3: Canada and northeastern United States
- Project setup and repository creation
- Database schema design
- NFPA 291 calculation engine
- Backend API development
- React frontend with authentication
- Basic mapping integration
- Flow testing module
- Inspection management
- PDF report generation
- Advanced mapping features
- Scheduling system
- Email notifications
- React Native development
- Offline functionality
- QR code scanning
- Camera integration
- GPS auto-capture
- SCADA integrations
- Advanced analytics
- White-label solution
- API marketplace
- Starter: $49/month (100 hydrants, 2 users)
- Professional: $99/month (500 hydrants, 5 users, mobile app)
- Enterprise: $199/month (unlimited hydrants, white-label)
- Year 1: 15 clients = $14,220 ARR
- Year 2: 40 clients = $47,520 ARR
- Year 3: 75 clients = $107,100 ARR
Target: $30,000 ARR by end of Year 1
We welcome contributions from the water utility and fire safety community!
- Report Bugs - Use GitHub Issues for bug reports
- Feature Requests - Suggest features that would help your utility
- Code Contributions - Submit PRs for bug fixes or new features
- Documentation - Help improve guides and API docs
- Testing - Beta test new features and provide feedback
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes with tests
- Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
See CONTRIBUTING.md for detailed guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
- GitHub Issues: Report bugs and request features
- Email: support@tridentsys.ca
- Website: https://tridentsys.ca
- LinkedIn: Connect with the development team
HydrantHub is developed by Trident Systems, founded by a water distribution operator with 15+ years of field experience. We understand the daily challenges of hydrant testing because we've lived them.
Our Mission: Eliminate the paperwork so you can focus on keeping the water flowing and communities safe.
β Star this repo if HydrantHub could help your utility!
π Connect with us on LinkedIn and follow our development journey