Skip to content

Classter πŸš€ | A Smart School Management System built with Angular, Firebase, and AI-powered services (Gemini & Google Vision).

Notifications You must be signed in to change notification settings

francescomaxim/school-mngr

Repository files navigation

πŸ“š Classter - Smart School Management System

Classter is a modern web application developed with Angular and Firebase, designed to manage school activities for students and teachers, offering advanced artificial intelligence support and real-time functionalities.


βš™οΈ Technologies Used

  • Frontend: Angular, NgRx, Angular Material / TailwindCSS
  • Backend: Firebase Realtime Database, Authentication, Storage, Cloud Functions
  • AI & OCR: Gemini API (Summarization and Virtual Assistant), Google Vision API (OCR and image analysis)

πŸš€ Key Features

πŸ”— Live Demo: Classter App

πŸ”’ Authentication & Authorization

  • Role-based authentication: student, teacher, admin
  • Firebase Authentication

πŸ“– Course Management

  • Create, edit, and delete courses
  • Course materials (documents, images)
  • Automatic/manual student enrollment

πŸ“ Assignment Management

  • Add and manage assignments and projects
  • Automated assignment submission and validation via OCR (Google Vision API)

πŸ“… Attendance Tracking

  • Intuitive attendance system
  • Excel report generation (ExcelService)

πŸ“Š Reports & Statistics

  • Export and import academic data in Excel
  • Student and teacher performance analytics

πŸ€– Integrated AI Assistant

  • Automatic course material summaries
  • Intelligent feedback for assignments and projects (Gemini API)
  • Integrated virtual assistant (chatbot)

πŸ“² Notifications

  • Real-time notifications for updates, grades, and deadlines
  • Firebase Cloud Messaging

πŸ—‚οΈ Project Structure

src
β”œβ”€β”€ app
β”‚   β”œβ”€β”€ core
β”‚   β”‚   └── services (Firebase, Excel, Gemini, Vision)
β”‚   β”œβ”€β”€ modules
β”‚   β”‚   β”œβ”€β”€ auth
β”‚   β”‚   β”œβ”€β”€ dashboard
β”‚   β”‚   β”œβ”€β”€ courses
β”‚   β”‚   β”œβ”€β”€ assignments
β”‚   β”‚   β”œβ”€β”€ attendance
β”‚   β”‚   └── users
β”‚   β”œβ”€β”€ shared
β”‚   └── store (NgRx)
β”‚       β”œβ”€β”€ actions
β”‚       β”œβ”€β”€ reducers
β”‚       β”œβ”€β”€ effects
β”‚       └── selectors
└── environments

πŸ”₯ Firebase Realtime Database Structure

classter
β”œβ”€β”€ users
β”œβ”€β”€ courses
β”œβ”€β”€ assignments
β”œβ”€β”€ attendance
└── notifications

πŸ› οΈ Specific Integrated Services

  • ExcelService: Generate and import academic data in Excel format
  • GeminiService: Automatic summaries, intelligent feedback, chatbot
  • GoogleVisionService: OCR and automatic document validation

πŸ”„ Data Flow (NgRx)

Component ➜ Action ➜ Effect ➜ Service (Firebase) ➜ Reducer ➜ Store ➜ Selector ➜ Component

πŸ“Œ Installation and Local Development

  1. Clone the repository:
git clone https://github.com/username/classter.git
cd classter
  1. Install dependencies:
npm install
  1. Configure the environment.ts file:
export const environment = {
  firebaseConfig: {
    apiKey: "",
    authDomain: "",
    databaseURL: "",
    projectId: "",
    storageBucket: "",
    messagingSenderId: "",
    appId: "",
  },
};
  1. Run the application:
ng serve

πŸ“¦ Build and Deploy (Firebase Hosting)

ng build --prod
firebase deploy

πŸ‘¨β€πŸ’» Author

Built with ❀️ using Angular & Firebase


About

Classter πŸš€ | A Smart School Management System built with Angular, Firebase, and AI-powered services (Gemini & Google Vision).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published