ALP is a Flutter-based educational application designed to support adaptive learning. It supports both Windows and Android platforms and comes with advanced features such as an AI assistant and peer-to-peer data synchronization.
- Smart AI Assistant: Integrated with Google Gemini to assist in the teaching and learning process.
- Multi-Role Management: Supports Student and Teacher roles with tailored features.
- Offline Synchronization (P2P): Enables data exchange between devices using local connections and QR Codes (without internet).
- Local Storage: Uses SQLite for efficient and secure data storage.
- Multi-Platform: Runs seamlessly on Android devices and Windows Desktops.
- Security: Secure user authentication.
Before you begin, ensure you have the following installed:
- Flutter SDK (Latest version recommended, minimum 3.10.x).
- Visual Studio Code (VS Code).
- VS Code Extensions:
- For Android:
- Android SDK & Tools (usually installed via Android Studio Setup or command line tools).
- Android Emulator or Physical Device (with USB Debugging enabled).
- For Windows:
- Visual Studio 2022 (Community Edition is sufficient).
- "Desktop development with C++" workload must be installed.
-
Clone the Repository: Open your terminal or command prompt and run:
git clone https://github.com/ade-karya/alp-flutter.git cd alp-flutter -
Open in VS Code: Open the cloned folder in Visual Studio Code.
-
Install Dependencies:
-
Open the integrated terminal in VS Code (
Ctrl +`). -
Run the following command:
flutter pub get
-
Alternatively, when you open
pubspec.yaml, VS Code often prompts you to "Get Packages". You can click that button.
-
- Look at the bottom right corner of the VS Code status bar. You should see the currently selected device (e.g., "Windows (windows-x64)" or "Pixel 4a").
- Click on it to change the target device (select an Android emulator/device or Windows).
- Open
lib/main.dart. - Press F5 on your keyboard to start debugging.
- Or, go to the top menu: Run > Start Debugging.
- Ensure your emulator is running or your physical device is connected.
- Select the Android device in the VS Code status bar.
- Press F5.
- Important: Ensure Developer Mode is enabled in Windows Settings (Settings > Update & Security > For developers).
- Select "Windows" in the VS Code status bar.
- Press F5.
This project follows Clean Architecture and uses the BLoC pattern for state management.
lib/core: Core components, utilities, and base configurations.lib/features: Main feature modules (Auth, Student, Teacher, Network, AI Assistant, etc.).lib/main.dart: Application entry point.
- Windows Database Issues: If you encounter errors related to
sqlite3.dllon Windows, ensure the C++ build tools are correctly installed via Visual Studio. - P2P Connection: For synchronization, ensure both devices are on the same Wi-Fi network or one device has Hotspot enabled.
- VS Code Device Not Showing: If no device is shown, try running
flutter doctorin the terminal to diagnose environment issues.
Developed with ❤️ using Flutter.