Skip to content

prathamesh-mutkure/anti-cheat-exam-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anti-Cheat Exam App 🌟

An App that aims to stop cheating in online exams with the power of AI and ML, co-created with Samyak Sukhdeve

We also have a web version of the app with more features and better features, check that project here

Features and Interfaces

  1. Login Page

    • Login with the provided user id and password
    • Powered by JWT tokens
  2. Home page

    • Shows all the exams assigned to the user
    • The user can start an exam only on the correct timeslot
    • Logout through button in the app bar
  3. Exam Page

    • The user can answer MCQ-based questions

    • The user can also view their progress

    • image

  4. AI-powered face motion detector

    • We've used Google's on-device ml-kit to track the motion of the user's face.

    • We can check if a user is trying to cheat by monitoring the position of their face

    • image

Tech stack

Frontend

  • Flutter
  • MobX + Provider

Backend

  • Nodejs
  • Express
  • MongoDB

Frontend

  • Next.js (React)
  • TypeScript
  • Redux

Other Tools

  • Google's on-device ML Kit

Points to remember while testing the app

  1. First setup the backend by following instructions in this repository
  2. When testing on android emulator, if you get a connection error use http://10.0.2.2/ instead of localhost
  3. iOS emulator doesn't support camera, this will give an error, use a real device to test AI features.
  4. On real devices, make sure your PC and mobile are connected to same network, use network IP address instead of localhost
  5. Don't forgot the PORT number
  6. Allow permissions for camera and mic when asked
  7. Make sure the BACKEND_URL is appended with /api

Instructions

  1. Import the project through Android Studio or clone it
    • https://github.com/prathamesh-mutkure/anti-cheat-exam-app.git
  2. Install flutter packages
    • flutter pub get
  3. Generate store classes
    • flutter packages pub run build_runner build
  4. Create a .env file and set the following variables
    • BACKEND_URL
  5. Connect your device or emulator and run the app
    • flutter run
  6. The app is now running

Useful Links

Need help?

Feel free to contact me on Twitter or LinkedIn, know more about me at prathamesh.co

Twitter Instagram

About

Flutter App that aims to reduce cheating in online exams with power of AI and ML

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages