A React Native Expo application for monitoring aquaculture operations with real-time data visualization and comprehensive pool management.
- Farm overview with key statistics (Total Pools, Average Health, Total Fish, Critical Alerts)
- Real-time temperature and pH level charts
- Quick actions for water changes and fish feeding
- Individual pool parameter tracking:
- pH Level monitoring
- Temperature control
- Chlorine levels
- Salinity measurements
- Dissolved oxygen tracking
- Turbidity monitoring
- Fish state assessment
- Overall health metrics
- Real-time sensor data from comprehensive aquaculture monitoring system
- Automatic fallback to offline mode when API is unavailable
- Pull-to-refresh functionality for latest data
- Support for 13+ sensor types including pH, temperature, ammonia, dissolved oxygen, etc.
- Historical data analysis and trend visualization
- Water Quality: pH, ammonia, nitrite, nitrate, dissolved oxygen, ORP, salinity
- Physical Parameters: Temperature, turbidity, water level, TOC
- Fish Behavior: Activity tracking, feeding response monitoring
- Analytics: Daily summaries, health scoring, alert systems
- Interactive charts for temperature and pH trends
- Real-time parameter status indicators
- Color-coded health status (Good, Warning, Critical)
- Dark theme with aqua blue accents
- Card-based layout with gradient backgrounds
- Responsive design for mobile devices
- Intuitive navigation with drawer and tab structure
- Node.js (v14 or higher)
- npm or yarn
- Expo CLI
- Expo Go app (for testing on physical devices)
-
Clone the repository
-
Install dependencies:
npm install
-
Start the development server:
npm start
-
Use Expo Go app to scan the QR code or run on simulator:
npm run ios # iOS Simulator npm run android # Android Emulator npm run web # Web Browser
src/
├── screens/ # Screen components
│ ├── DashboardScreen.js
│ ├── PoolsScreen.js
│ ├── HistoryScreen.js
│ ├── RecommendationsScreen.js
│ ├── BacteriaTestingScreen.js
│ └── SettingsScreen.js
├── navigation/ # Navigation configuration
│ └── AppNavigator.js
├── components/ # Reusable components
├── services/ # API integration layer
│ ├── aquacultureApi.js # API service functions
│ └── config.js # Configuration and constants
├── hooks/ # Custom React hooks
│ └── useAquacultureData.js # Data fetching hooks
└── utils/ # Utility functions
└── dataFormatting.js # Data formatting helpers
- React Navigation: Drawer and tab navigation
- Expo Linear Gradient: Card styling and backgrounds
- React Native Chart Kit: Data visualization
- Expo Vector Icons: Consistent iconography
- React Native Reanimated: Smooth animations
- React Native Gesture Handler: Touch interactions
The app integrates with an OpenAPI 3.0.3 compliant aquaculture monitoring system:
- Base URL:
http://localhost:3000/api(configurable) - Endpoints: 50+ REST endpoints for comprehensive monitoring
- Real-time data: Sensor readings, pool management, analytics
- API URL: Update
src/services/config.jsfor production - Endpoints: All API calls are centralized in
src/services/aquacultureApi.js - Offline Mode: App works without API using mock data
- Error Handling: Graceful degradation with user feedback
- Pool Management: CRUD operations for aquaculture pools
- Sensor Readings: Real-time data from 13+ sensor types
- Historical Data: Daily summaries and trend analysis
- Water Quality: Comprehensive purity assessments
- Configuration: Sensor thresholds and alert settings
See API_INTEGRATION.md for detailed integration documentation.
- Background:
#0f0f23(Dark Navy) - Cards:
#1a1a2e(Darker Navy) - Accent:
#4ac3e0(Aqua Blue) - Text:
#ffffff(White) - Secondary Text:
#a0a0a0(Light Gray) - Warning:
#ffab00(Orange) - Critical:
#ff5252(Red)
- API Integration: Complete integration with aquaculture monitoring system
- Real-time Data: Live sensor readings with status indicators
- Offline Support: Graceful degradation with mock data fallbacks
- Historical Data Analysis: Detailed trend analysis and reporting
- AI-powered Recommendations: Machine learning insights
- Push Notifications: Real-time alerts for critical conditions
- Bacteria Testing Integration: Laboratory result integration
- Export Data Functionality: CSV/PDF report generation
- Multi-farm Support: Support for multiple aquaculture sites
- User Management: Role-based access and permissions
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please contact the development team or open an issue in the repository.