MIF_E31230069/spk_mobile/FILE_REFERENCE.md

11 KiB

📑 Complete File Reference - API Integration

Panduan lengkap untuk menemukan file yang Anda butuhkan.


📁 File Structure

c:\laragon\www\TA\
├── spk_kontrakan/              ← Backend API (Laravel)
│   └── php artisan serve       ✓ Running on http://127.0.0.1:8000
│
└── spk_mobile/                 ← Flutter App
    ├── lib/
    │   ├── services/
    │   │   ├── auth_service.dart           ✅ Ready
    │   │   ├── kontrakan_service.dart      ✅ Ready
    │   │   ├── booking_service.dart        ✅ Ready
    │   │   ├── laundry_service.dart        ✅ Ready
    │   │   ├── review_service.dart         ✅ NEW
    │   │   ├── favorite_service.dart       ✅ NEW
    │   │   └── location_service.dart       ✅ Existing
    │   ├── config/
    │   │   └── app_config.dart             ← UPDATE THIS FIRST!
    │   ├── models/
    │   │   ├── booking.dart
    │   │   ├── kontrakan.dart
    │   │   ├── laundry.dart
    │   │   ├── user.dart
    │   │   └── ...
    │   ├── screens/
    │   │   ├── login.dart
    │   │   ├── register.dart
    │   │   └── ... (to be implemented)
    │   └── main.dart            ← ADD LOADER HERE
    ├── test/
    │   └── api_test_helper.dart  ✅ NEW - TESTING UTILITY
    │
    ├── GETTING_STARTED.md        ✅ NEW - START HERE!
    ├── README_API_INTEGRATION.md ✅ NEW - Overview
    ├── API_QUICKSTART.md         ✅ NEW - Quick Examples
    ├── API_INTEGRATION_GUIDE.md  ✅ NEW - Full Reference
    ├── API_STATUS.md             ✅ NEW - Feature Status
    ├── SCREEN_IMPLEMENTATION_CHECKLIST.md  ✅ NEW - Screen Guides
    ├── WHAT_WAS_CREATED.md       ✅ NEW - Summary
    └── pubspec.yaml              (no changes needed)

🎯 Which File to Read?

Just Started?

👉 Read: GETTING_STARTED.md

  • 3-step quick start
  • Test your setup
  • First example code

Want Overview?

👉 Read: README_API_INTEGRATION.md

  • What's included
  • All services summary
  • Learning path

Need Code Examples?

👉 Read: API_QUICKSTART.md

  • 15+ working examples
  • Common use cases
  • Widget integration

Building a Screen?

👉 Read: SCREEN_IMPLEMENTATION_CHECKLIST.md

  • Step-by-step for 11 screens
  • Code templates
  • Test cases

Need Full Reference?

👉 Read: API_INTEGRATION_GUIDE.md

  • All endpoints documented
  • Error handling patterns
  • Troubleshooting

Checking Status?

👉 Read: API_STATUS.md

  • What's implemented
  • What's ready
  • Implementation checklist

Want to Know What's New?

👉 Read: WHAT_WAS_CREATED.md

  • Summary of changes
  • New services
  • New documentation
  • Statistics

🔧 Which File to Edit?

To Change API URL

File: lib/config/app_config.dart

static const String baseUrl = 'http://192.168.XX.XX:8000/api';
                                                      
                                        Update this IP!

To Load Token on Startup

File: lib/main.dart

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  final authService = AuthService();
  await authService.loadToken();   ADD THIS
  
  runApp(const MyApp());
}

To Use Services in Your Screens

File: lib/screens/your_screen.dart

import 'package:spk_mobile/services/xxx_service.dart';   Use these imports

final service = XxxService();
final data = await service.methodName();

📋 Services Reference

1. AuthService

File: lib/services/auth_service.dart Documentation: See API_QUICKSTART.md (Login section) Example: SCREEN_IMPLEMENTATION_CHECKLIST.md (Login Screen)

2. KontrakanService

File: lib/services/kontrakan_service.dart Documentation: API_INTEGRATION_GUIDE.md (Kontrakan Service) Example: SCREEN_IMPLEMENTATION_CHECKLIST.md (Kontrakan List)

3. BookingService

File: lib/services/booking_service.dart Documentation: API_INTEGRATION_GUIDE.md (Booking Service) Example: API_QUICKSTART.md (Create Booking section)

4. LaundryService

File: lib/services/laundry_service.dart Documentation: API_INTEGRATION_GUIDE.md (Laundry Service) Example: API_QUICKSTART.md (Get Laundry section)

5. ReviewService NEW

File: lib/services/review_service.dart Documentation: API_INTEGRATION_GUIDE.md (Review Service) Example: API_QUICKSTART.md (Add Review section)

6. FavoriteService NEW

File: lib/services/favorite_service.dart Documentation: API_INTEGRATION_GUIDE.md (Favorite Service) Example: API_QUICKSTART.md (Toggle Favorite section)


🧪 Testing

To Test API Connection

File: test/api_test_helper.dart

Run All Tests:

await APITestHelper.runAllTests(
  testEmail: 'test@example.com',
  testPassword: 'password123',
);

Test Specific Endpoint:

await APITestHelper.testGetKontrakan();
await APITestHelper.testLogin(email: '...', password: '...');

See API_QUICKSTART.md for more test examples.


📖 Documentation Files Path

File Location Purpose
GETTING_STARTED.md /spk_mobile/ Quick start (3 steps)
README_API_INTEGRATION.md /spk_mobile/ Overview & summary
API_QUICKSTART.md /spk_mobile/ Code examples & patterns
API_INTEGRATION_GUIDE.md /spk_mobile/ Complete reference
API_STATUS.md /spk_mobile/ Status & checklist
SCREEN_IMPLEMENTATION_CHECKLIST.md /spk_mobile/ Screen-by-screen guide
WHAT_WAS_CREATED.md /spk_mobile/ Summary of changes

First Time Users

  1. GETTING_STARTED.md - 10 min
  2. README_API_INTEGRATION.md - 15 min
  3. API_QUICKSTART.md - Browse examples

Ready to Code

  1. Pick a screen from SCREEN_IMPLEMENTATION_CHECKLIST.md
  2. Follow the code template
  3. Refer to API_QUICKSTART.md for similar examples
  4. Use API_INTEGRATION_GUIDE.md as reference

Need Detailed Info


Implementation Checklist

Before Coding

Screen Implementation

Before Push/Deployment

  • Check API_STATUS.md checklist
  • Test all implemented features
  • Update progress in status file

🆘 Troubleshooting

"I don't know where to start"

→ Read GETTING_STARTED.md

"How do I use a service?"

→ See examples in API_QUICKSTART.md

"Which method should I use?"

→ Check API_INTEGRATION_GUIDE.md

"How do I build screen X?"

→ Find it in SCREEN_IMPLEMENTATION_CHECKLIST.md

"API connection fails"

→ See troubleshooting in GETTING_STARTED.md

"I want to know what's new"

→ Read WHAT_WAS_CREATED.md


🎯 Quick Navigation

By Task

Setup System

  1. GETTING_STARTED.md - Step 1-3
  2. Test with test/api_test_helper.dart

Learn API Services

  1. README_API_INTEGRATION.md - Review services
  2. API_INTEGRATION_GUIDE.md - Details
  3. API_QUICKSTART.md - Examples

Build Screens

  1. SCREEN_IMPLEMENTATION_CHECKLIST.md - Pick screen
  2. API_QUICKSTART.md - Find similar example
  3. Code your screen
  4. Test with widget

Test Everything

  1. test/api_test_helper.dart - API tests
  2. Manual screen testing - User interactions
  3. API_STATUS.md - Verification checklist

By Role

Project Manager

Developer (Beginner)

Developer (Experienced)

QA/Tester


🔑 Key Files to Remember

Priority File What It Is
🔴 Critical lib/config/app_config.dart API URL config (MUST UPDATE!)
🔴 Critical lib/main.dart App entry (ADD LOADER!)
🟡 Important SCREEN_IMPLEMENTATION_CHECKLIST.md Implementation guide
🟡 Important API_QUICKSTART.md Code examples
🟢 Reference API_INTEGRATION_GUIDE.md Full API reference
🟢 Reference test/api_test_helper.dart Testing utility

📞 File Navigation Guide

Need to understand a service?API_INTEGRATION_GUIDE.md → Find service name

Need to see code example?API_QUICKSTART.md → Search by feature

Need to build a screen?SCREEN_IMPLEMENTATION_CHECKLIST.md → Find screen number

Need to configure app?lib/config/app_config.dart → Update baseUrl

Need to test API?test/api_test_helper.dart → Run test methods

Need quick start?GETTING_STARTED.md → Follow 3 steps


Summary

  • 6 API Services ready to use
  • 6 Documentation Files for different needs
  • 1 Testing Utility for validation
  • 1 Config File to update
  • All Ready for development

Total Files Created/Updated: 13

  • Services: 2 new + 4 existing (6 total)
  • Documentation: 6 new
  • Testing: 1 new
  • Configuration: Already exists
  • Implementation: Ready to start

Start with: GETTING_STARTED.md Then follow: Implementation guide as needed Finally: Reference documentation when stuck


Happy Coding! 🚀

All API integration is complete and documented. Navigate using this file when you need to find something.