An open API service indexing awesome lists of open source software.

https://github.com/mohammedaoudi/android-roomdb-education-management

An Android application demonstrating Room Database implementation with clean architecture for educational management. Features DAO patterns, asynchronous data handling, and complete CRUD operations with a real-world educational use case. Built with Kotlin and Material Design.
https://github.com/mohammedaoudi/android-roomdb-education-management

android android-application dao education-management kotlin room-database sqlite

Last synced: 2 months ago
JSON representation

An Android application demonstrating Room Database implementation with clean architecture for educational management. Features DAO patterns, asynchronous data handling, and complete CRUD operations with a real-world educational use case. Built with Kotlin and Material Design.

Awesome Lists containing this project

README

          

# ENSAJ Management Application

## Overview
This mobile application is designed for managing educational processes at ENSAJ using the Room library and DAO (Data Access Objects). The application provides a robust interaction with SQLite databases, supporting asynchronous communication for improved user experience in managing students, classes, and subjects.

## 🎯 Features

### 👨‍💼 Administrator Features
- Manage professors (CRUD operations)
- Manage classes and departments (CRUD operations)
- Handle modules associated with classes
- Manage students in each class
- View system statistics
- Associate professors with modules

### 👨‍🏫 Professor Features
- View list of modules to teach
- Access student lists by class
- Manage personal profile information

## 🛠️ Technologies Used
- Kotlin - Modern programming language for Android
- Room Database - Abstraction layer over SQLite
- Android Studio
- XML for layouts
- MPAndroidChart for statistics visualization

## 🎬 Demo

### Video Demo

[Click here to watch the demo video](https://github.com/user-attachments/assets/1155bc4f-1d23-4b3e-aef3-135cfb54e8f0)

## ⚙️ Technical Requirements

### Development Environment
- Android Studio
- Android SDK (API level 21 minimum)
- JDK 11 or higher
- Git for version control

### Hardware Requirements
- Processor: Intel Core i5/i7 or equivalent
- RAM: 8 GB minimum (16 GB recommended)
- Storage: 10 GB minimum
- Android Emulator or physical device (Android 5.0+)

## 📥 Installation

1. Clone the repository:
```bash
git clone https://github.com/Mohammedaoudi/Android-RoomDB-Education-Management.git
```

2. Open the project in Android Studio

3. Sync the project with Gradle files

4. Run the application on your device or emulator

## 📱 Application Architecture

### Database Structure
- Users (Administrators, Professors)
- Classes and Departments
- Modules and Subjects
- Students
- Academic Years and Semesters

### Key Components
- Room Database implementation
- DAO (Data Access Objects)
- Asynchronous data handling
- User interface with Material Design

## 🤝 Contributing
We welcome contributions to this project! Please feel free to submit issues and pull requests.