Skip to content

rohitjain25/lens

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LeNs

Overview

This repository contains the codebase for a comprehensive school dashboard system designed to streamline administrative tasks, facilitate communication, track student progress, and provide insightful data analysis. It comprises features for user authentication, student and teacher record management, performance analysis, intervention tracking, goal setting, communication tools, customizable views, data analysis, parent access, gamification, integration with existing systems, data privacy, and feedback mechanisms.

Features

User Authentication

  • Secure login and signup processes
  • Storage of user information (name, email, hashed password) in a database
  • Credential validation upon login

Student Records

  • Management and display of student details (name, grade, test scores, attendance, disciplinary actions)
  • Database storage and retrieval based on user permissions

Teacher Records

  • Management and display of teacher information (name, subjects taught, performance reviews, professional development)
  • Separate database storage and retrieval based on user permissions

Performance Analysis

  • Visual representation of student and teacher performance data through charts and graphs
  • Examples: average test scores by grade, attendance trends over time

Intervention Tracking

  • Monitoring and recording of interventions for struggling students
  • Includes parent meetings, tutoring sessions, assigned remedial work
  • Data storage and display in table format

Goal Setting

  • Assistance in setting and tracking goals for both students and teachers
  • Storage and tracking of individual goals, showcasing progress

Communication

  • Facilitation of communication among teachers, administrators, and parents
  • Messaging system, announcements, and event calendar integration
  • Compatibility with email or text messaging platforms

Customizable Views

  • Personalized dashboard views based on user preferences
  • Tailoring data display for various needs (behavioral, academic focus)

Data Analysis Tools

  • Integration of tools for data insights and analysis
  • Report generation, correlation analysis, predictive analytics

Parent Access

  • Parental access to monitor child's progress and interact with teachers
  • Real-time grade updates, messaging, and progress reports

Gamification

  • Implementation of gamification elements for student and teacher engagement
  • Badges, points, and academic challenges for motivation

Integration with Other Systems

  • Seamless integration with existing school systems (e.g., learning management, student information)
  • Streamlining data collection and enhancing usability

Data Privacy and Security

  • Implementation of robust data privacy measures (encryption, access controls)
  • Regular data backup and recovery procedures

Feedback Mechanisms

  • User-friendly feedback mechanisms (surveys, user testing)
  • Continuous improvement based on user input

Tech Stack

Front-end

  • React: JavaScript library for building user interfaces
  • Redux: Predictable state management for data flow in the application
  • Chart.js: JavaScript library for creating various charts and graphs
  • Material-UI: React component library following Material Design guidelines

Back-end

  • FastAPI: Python web framework for building high-performance APIs
  • SQLAlchemy: Python library for working with relational databases
  • MariaDB: Open-source relational database management system

Infrastructure

  • AWS (Amazon Web Services): Cloud computing platform for hosting, storage, and networking
  • Terraform: Infrastructure as code tool for provisioning and managing resources
  • Jenkins: Continuous Integration/Continuous Deployment (CI/CD) tool for automating build and deployment processes

Installation and Deployment

Prerequisites

  • Node.js, Python, Docker
  • AWS account, Terraform, Jenkins setup

Installation Steps

  1. Clone this repository
  2. Set up front-end and back-end environments
  3. Configure databases and API endpoints
  4. Deploy using Docker containers
  5. Utilize Terraform for AWS infrastructure provisioning
  6. Implement CI/CD with Jenkins for automated deployment

For detailed installation instructions, refer to individual component READMEs.

Contributors