MIF_E31221222/sigap-mobile/README.md

2.4 KiB

SIGAP Mobile App

This is the mobile application for SIGAP Jember, built with Flutter.

Features

  • User Authentication (Google Sign-In, Local Auth)
  • Real-time data synchronization with Supabase
  • Location-based services (Mapbox, Geolocator, Geocoding)
  • Face Detection (Google ML Kit)
  • Notifications
  • File and Image Picking
  • Direct Phone Calls
  • UI/UX with various Flutter packages (Lottie, Shimmer, Badges, Carousel Slider, etc.)

Technologies Used

  • Flutter: UI toolkit for building natively compiled applications for mobile, web, and desktop from a single codebase.
  • Supabase: Open Source Firebase Alternative (Backend as a Service).
  • Google ML Kit: For on-device machine learning capabilities, specifically face detection.
  • Mapbox: For interactive maps and location services.

Getting Started

Prerequisites

Installation

  1. Clone the repository:
    git clone https://github.com/your-username/sigap-v.git
    cd sigap-v/sigap-mobile
    
  2. Install Flutter dependencies:
    flutter pub get
    
  3. Create a .env file in the sigap-mobile directory and add your Supabase credentials:
    SUPABASE_URL=YOUR_SUPABASE_URL
    SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY
    

Running the App

flutter run

Project Structure

lib/
├── app.dart                  # Main application widget
├── main.dart                 # Entry point of the application
├── navigation_menu.dart      # Bottom navigation bar implementation
├── splash_screen.dart        # Splash screen for the app
├── src/                      # Contains core application logic, features, and common widgets
│   ├── features/             # Individual features/modules of the app (e.g., authentication, home, profile)
│   ├── common/               # Common widgets, constants, and utilities
│   └── utils/                # Helper functions and extensions
└── supadart/                 # Supabase related services and models
    ├── database/             # Database interactions and services
    └── models/               # Data models for Supabase tables