SmartLearn: A Mobile Tutor App with Adaptive AI for Personalized Learning
SmartLearn is an Android-only mobile learning application developed using Flutter with Dart programming and Firebase, designed to support self-paced learning for higher-education students through AI-adaptive quizzes, performance analytics, and personalised learning recommendations.
The application functions as a mobile tutor, analysing student performance in real time and guiding learners toward suitable topics to improve understanding and long-term retention.
SmartLearn enhances the learning experience by moving beyond static quizzes and generic study materials. Instead, it adapts to each learner’s performance by:
- Dynamically adjusting quiz difficulty
- Identifying weak and strong learning areas
- Recommending personalised study topics
- Providing performance analytics and progress tracking
👩🎓 Student
- Register and log in securely
- Access organised learning materials
- Take AI-adaptive quizzes
- Receive instant quiz feedback
- View performance analytics dashboards
- Receive personalised learning recommendations
- Get notifications and reminders
- Log in securely
- Upload and manage learning materials
- Manage quiz questions
- Monitor student performance analytics
- Send notifications to students
To run this project, ensure the following are installed:
- Flutter SDK (>= 3.16)
- Android Studio
- Android SDK
- Android emulator or physical Android device
- Firebase project setup
- Stable internet connection
Check Flutter installation:
flutter --version
🚀 Getting Started
1. Clone the Repository
bash
git clone https://github.com/nrfnaaaa/SmartLearn.git
cd SmartLearn
2. Install Dependencies
bash
flutter pub get
3. Firebase Setup
Step 1 – Create Firebase Project
Go to Firebase Console
Click Add project → Name it (e.g., SmartLearn)
Step 2 – Add Android App
Open Project Settings → Add app → Android
Enter Android package name (check android/app/build.gradle)
Register the app
Step 3 – Download Config File
Download google-services.json
Place it in: android/app/google-services.json
Step 4 – Enable Firebase Services
In Firebase Console, enable:
Authentication (Email/Password)
Firestore Database (start in test mode)
Cloud Storage
Cloud Messaging (optional, for notifications)
Step 5 – Verify Android Configuration
Ensure android/app/build.gradle includes:
gradle
apply plugin: 'com.google.gms.google-services'
And android/build.gradle has:
gradle
classpath 'com.google.gms:google-services:4.4.0'
4. Run the App
Make sure an Android emulator is running or a physical device is connected, then:
bash
flutter run