Skip to content

Repository files navigation

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.

🎯 Project Description

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

👥 User Roles

👩‍🎓 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

👨‍🏫 Lecturer

  • Log in securely
  • Upload and manage learning materials
  • Manage quiz questions
  • Monitor student performance analytics
  • Send notifications to students

📋 System Requirements

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

About

SmartLearn

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages