Skip to content

yassine-cloud/Android-Education

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Android-Education

Project Description

Android-Education is a mobile application designed to facilitate educational management for students, teachers, and administrators. The app provides features such as user authentication, role-based dashboards (admin, teacher, student), course management, task tracking, and user profile management. The application is structured with a clean architecture, using activities and fragments for modular UI, and leverages Room for local data persistence.

Key Features

  • User Authentication: Secure login and registration with password hashing (BCrypt).
  • Role-Based Dashboards: Different dashboards for admins, teachers, and students.
  • Course & Task Management: Add, edit, and view courses and tasks.
  • Profile Management: Edit and view user profiles with image support.
  • Material Design: Modern UI using Material Components.
  • Local Database: Uses Room for storing user and course data.
  • Permissions: Handles runtime permissions for notifications and phone calls.

Tools & Technologies Used

  • Language: Java (Android)
  • Build System: Gradle (Kotlin DSL)
  • Android SDK: Compile SDK 34, min SDK 27
  • UI Frameworks: AndroidX, Material Components, ConstraintLayout, CardView
  • Database: Room (androidx.room:room-runtime, room-ktx)
  • Password Security: BCrypt (org.mindrot:jbcrypt)
  • Testing: JUnit, AndroidX Test, Espresso
  • Dependency Management: Version catalogs via libs.versions.toml
  • View Binding: Enabled for type-safe UI access

Project Structure

  • app/src/main/java/com/iset/education/ — Main application code (activities, fragments, viewmodels, utils)
  • app/src/main/res/ — Resources (layouts, drawables, menus, values)
  • app/src/main/AndroidManifest.xml — App manifest and permissions
  • build.gradle.kts / app/build.gradle.kts — Build configuration
  • gradle.properties — Gradle settings

How to Build

  1. Open the project in Android Studio.
  2. Sync Gradle and let dependencies resolve.
  3. Build and run on an emulator or device (min SDK 27).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages