Skip to content

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!