Skip to content

Raion-App-Programmer/Raion-Internship-2025-Team-8

 
 

Repository files navigation

Malang_Venture

Sebuah aplikasi Flutter yang memanfaatkan Firebase untuk autentikasi (Firebase Auth) dan penyimpanan catatan (Cloud Firestore). Proyek ini menerapkan pola Clean Architecture dengan pembagian domain, data, dan presentation, serta menggunakan Provider + GetIt untuk state management dan dependency injection.

Fitur Utama

  • Autentikasi Firebase:
    • Registrasi akun baru
    • Login dengan email/password
    • Logout
    • Proteksi rute berdasarkan status auth
  • Clean Architecture:
    • Domain Layer: Entities, Use Cases, Repository Contracts
    • Data Layer: Repository Implementations, Data Sources
    • Presentation Layer: UI + State Management
  • State Management & DI:
    • Provider untuk manajemen state
    • GetIt untuk dependency injection

Teknologi yang Digunakan

  • Flutter SDK
  • Firebase (Auth & Firestore)
  • Provider (State Management)
  • GetIt (Dependency Injection)

Struktur Folder

lib/
  ├── core/                    // Kode dasar & utilities
  │   ├── error/              // Error handling
  │   ├── usecases/           // Base use case contract
  │   └── utils/              // Helper functions
  ├── di/                     // Dependency Injection
  │   └── injection_container.dart
  ├── features/
  │   ├── data/               
  │   │   ├── datasources/    // Firebase services
  │   │   ├── models/         // Data models
  │   │   └── repositories/   // Repository implementations
  │   ├── domain/             
  │   │   ├── entities/       // Business objects
  │   │   ├── repositories/   // Repository contracts  
  │   │   └── usecases/      // Business logic
  │   └── presentation/
  │       ├── provider/       // State management
  │       ├── screens/        // UI screens
  │       └── widgets/        // Reusable widgets
  └── main.dart               // Entry point

Persiapan

Prerequisites

  • Flutter SDK (versi terbaru)
  • Firebase project & configurasi
  • Android Studio / VS Code
  • Android Emulator / iOS Simulator

Instalasi

  1. Clone repository:
git clone https://github.com/RedEye1605/Kelompok-8-Intern-Raion.git
cd Kelompok-8-Intern-Raion
  1. Install dependencies:
dependencies:
  flutter:
    sdk: flutter
  firebase_core: ^3.12.1
  firebase_auth: ^5.5.1
  cloud_firestore: ^5.6.5
  provider: ^6.0.5
  get_it: ^8.0.3
  1. Get packages:
flutter pub get
  1. Setup Firebase:
  • Buat project di Firebase Console
  • Download & tambahkan file konfigurasi:
    • google-services.json untuk Android
    • GoogleService-Info.plist untuk iOS
  • Aktifkan Authentication & Cloud Firestore

Menjalankan Aplikasi

  1. Pastikan device/emulator terhubung:
flutter devices
  1. Jalankan aplikasi:
flutter run

Testing

# Unit & Widget Tests
flutter test

# Integration Tests
flutter test integration_test

Build & Deploy

Android

flutter build apk --release

File APK akan tersedia di build/app/outputs/flutter-apk/app-release.apk

iOS

flutter build ios --release

Buka Xcode untuk proses deployment ke App Store

Kontribusi

  1. Fork repository
  2. Buat branch fitur (git checkout -b feature/AmazingFeature)
  3. Commit perubahan (git commit -m 'Add some AmazingFeature')
  4. Push ke branch (git push origin feature/AmazingFeature)
  5. Buat Pull Request

Kontak

Project Link: https://github.com/RedEye1605/Kelompok-8-Intern-Raion

About

Raion Internship 2025 - Team 8

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 92.6%
  • C++ 3.7%
  • CMake 2.9%
  • Swift 0.4%
  • C 0.2%
  • HTML 0.2%