Skip to content

junction-DataVim/Mobile_app

Repository files navigation

AquaCulture Monitor Mobile App

A React Native Expo application for monitoring aquaculture operations with real-time data visualization and comprehensive pool management.

Features

🏠 Dashboard

  • 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

🏊 Pool Monitoring

  • Individual pool parameter tracking:
    • pH Level monitoring
    • Temperature control
    • Chlorine levels
    • Salinity measurements
    • Dissolved oxygen tracking
    • Turbidity monitoring
    • Fish state assessment
    • Overall health metrics

� API Integration

  • 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

📡 Sensor Monitoring

  • 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

🎨 Design

  • Interactive charts for temperature and pH trends
  • Real-time parameter status indicators
  • Color-coded health status (Good, Warning, Critical)

🎨 Design

  • Dark theme with aqua blue accents
  • Card-based layout with gradient backgrounds
  • Responsive design for mobile devices
  • Intuitive navigation with drawer and tab structure

Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn
  • Expo CLI
  • Expo Go app (for testing on physical devices)

Installation

  1. Clone the repository

  2. Install dependencies:

    npm install
  3. Start the development server:

    npm start
  4. 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

Project Structure

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

Dependencies

  • 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

API Integration

Backend Requirements

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

Configuration

  1. API URL: Update src/services/config.js for production
  2. Endpoints: All API calls are centralized in src/services/aquacultureApi.js
  3. Offline Mode: App works without API using mock data
  4. Error Handling: Graceful degradation with user feedback

Supported API Features

  • 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.

Color Scheme

  • 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)

Features in Development

  • 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

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support, please contact the development team or open an issue in the repository.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published