Tools & Setup Guide 🛠️
To start working on REward, you need to set up your environment for Mobile, Backend, and Hardware development.
1. Code Editor: VS Code
We recommend Visual Studio Code for all parts of the project.
- Extensions to install:
- Flutter & Dart (essential).
- PHP Intelephense (for the API).
- Arduino or PlatformIO (for ESP32).
- Markdown All in One (for docs).
2. Flutter Development (Mobile)
- Install Flutter: Follow the guide at docs.flutter.dev.
- Run
flutter doctor: Ensure your environment is green. - To Start:
bash cd reward_app flutter pub get flutter run
3. PHP API (Backend)
- Local Server: Use XAMPP or WAMP to run the API on your laptop for testing.
- Remote Hosting: The production API lives on Hostinger.
- Tools: Use Postman or Insomnia to test the API endpoints (e.g., checking if the kiosk status update works).
4. ESP32 Hardware
- IDE: Arduino IDE (version 2.x).
- Board Manager: Add ESP32 support (Preferences -> Additional Board Manager URLs).
- Libraries needed:
WiFi.h(built-in).HTTPClient.h(built-in).FirebaseESP32(for direct database access).ESP32QRCodeReader(for the camera).
5. Firebase Console
You need access to the Firebase project to: - See the Firestore data. - Manage Authentication users. - Check Push Notifications logs.
Now that you have the tools, you are ready to dive into the App Architecture!