Skip to content

Premshaw23/Learnova

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

90 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Learnova

AI-Powered Smart Student Engagement & Attendance Platform

Transforming Education β€” One Institution at a Time

Live Demo Next.js React Firebase MongoDB Tailwind CSS


🌟 What is Learnova?

Learnova is a modern, AI-powered educational platform built to eliminate the inefficiencies of traditional school management. It replaces manual attendance, siloed data, and disengaged learning with a seamless, integrated experience for every stakeholder in education.

  • πŸ§‘β€πŸ« Teachers regain ~1 hour/day β€” more time to teach, less time on admin
  • πŸŽ’ Students convert ~90+ hours/year of idle time into productive learning
  • 🏫 Institutions improve attendance metrics and engagement across departments
  • πŸ‘¨β€πŸ‘©β€πŸ‘§ Parents gain transparent, real-time insights into their child's progress

✨ Features

πŸ” Role-Based Authentication

  • Separate dashboards for Students, Teachers, Institutes, and Admins
  • Firebase-powered sign-up/login with email verification and password reset
  • Secure protected routes with role-based redirects

πŸ“Έ Face Recognition Attendance

  • AI-powered face recognition using Face API.js for contactless attendance
  • Attendance validation and conflict resolution built-in
  • Reduces manual roll-call time dramatically

πŸ“Š Role-Specific Dashboards

  • Student Dashboard β€” view attendance records and academic progress
  • Teacher Dashboard β€” manage classes, take attendance, monitor students
  • Institute Dashboard β€” oversee departments and institution-wide metrics
  • Admin Dashboard β€” full system administration and user management

πŸ“‹ Notice Board

  • Institution-wide announcements and notices for all roles
  • Real-time updates accessible across dashboards

πŸ“… Activity Centre

  • Track academic and co-curricular activities
  • Centralised log accessible to students and teachers

πŸ€– AI Chatbot

  • Built-in Learnova chatbot for platform assistance
  • Available globally across all pages

πŸ“± Progressive Web App (PWA)

  • Installable on any device β€” mobile or desktop
  • Works in low-network environments for maximum accessibility

πŸ“¬ Contact & Communication

  • Integrated contact form powered by EmailJS
  • Direct communication channel between users and the Learnova team

βš™οΈ Profile & Settings

  • Universal profile management for all roles
  • Customisable settings per user type

πŸ› οΈ Tech Stack

Layer Technology
Framework Next.js 15 (App Router)
UI Library React 19
Styling Tailwind CSS v4
Animations Framer Motion, GSAP
Authentication Firebase Auth
Database MongoDB
File Storage Vercel Blob
Face Recognition Face API.js
Email EmailJS
Analytics Firebase Analytics
PWA @ducanh2912/next-pwa
Notifications React Hot Toast

πŸ“ Project Structure

learnova/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ page.js                   # Landing / About page
β”‚   β”œβ”€β”€ layout.js                 # Root layout with metadata & providers
β”‚   β”œβ”€β”€ auth/                     # Sign in / Sign up
β”‚   β”œβ”€β”€ verify/                   # Email verification
β”‚   β”œβ”€β”€ register/                 # New user registration
β”‚   β”œβ”€β”€ profile/                  # Profile setup
β”‚   β”œβ”€β”€ student/dashboard/        # Student dashboard
β”‚   β”œβ”€β”€ teacher/dashboard/        # Teacher dashboard
β”‚   β”œβ”€β”€ institute/dashboard/      # Institute dashboard
β”‚   β”œβ”€β”€ admin/dashboard/          # Admin dashboard
β”‚   β”œβ”€β”€ attendance/               # Attendance management
β”‚   β”œβ”€β”€ activity/                 # Activity centre
β”‚   β”œβ”€β”€ notices/                  # Notice board
β”‚   β”œβ”€β”€ settings/                 # User settings
β”‚   └── contact/                  # Contact page
β”‚
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ AuthForm.js               # Authentication form
β”‚   β”œβ”€β”€ RoleSelection.js          # Role selection UI
β”‚   β”œβ”€β”€ FaceRecognizer.js         # Face recognition component
β”‚   β”œβ”€β”€ AttendanceValidation.js   # Attendance validation logic
β”‚   β”œβ”€β”€ StudentDashboard.js       # Student dashboard component
β”‚   β”œβ”€β”€ TeacherDashboardComponent.js
β”‚   β”œβ”€β”€ InstituteDashboard.js
β”‚   β”œβ”€β”€ AdminDashboard.js
β”‚   β”œβ”€β”€ ChatBot.js                # AI chatbot
β”‚   β”œβ”€β”€ noticeBoard.js            # Notice board component
β”‚   β”œβ”€β”€ Navbar.js                 # Navigation
β”‚   β”œβ”€β”€ ProtectedRoute.js         # Route protection
β”‚   β”œβ”€β”€ InstallPWA.js             # PWA install prompt
β”‚   └── profile.js / settings.js # Profile & settings
β”‚
β”œβ”€β”€ constants/
β”‚   └── userRoles.js              # Role definitions and config
β”‚
β”œβ”€β”€ contexts/
β”‚   └── AuthContext.js            # Global auth state
β”‚
β”œβ”€β”€ hooks/
β”‚   └── useAuth.js                # Authentication hook
β”‚
β”œβ”€β”€ services/
β”‚   └── authService.js            # Firebase auth service
β”‚
β”œβ”€β”€ utils/
β”‚   └── authUtils.js              # Auth utility functions
β”‚
└── lib/
    └── firebaseConfig.js         # Firebase configuration

πŸš€ Getting Started

Prerequisites

  • Node.js 18+
  • A Firebase project (Auth + Analytics enabled)
  • A MongoDB instance (local or Atlas)
  • A Vercel Blob store (for file uploads)

1. Clone the repository

git clone https://github.com/Premshaw23/Learnova.git
cd Learnova

2. Install dependencies

npm install

3. Configure environment variables

Create a .env.local file in the root directory and add your credentials:

# Firebase
NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=your_measurement_id

# MongoDB
MONGODB_URI=your_mongodb_connection_string

# Vercel Blob
BLOB_READ_WRITE_TOKEN=your_vercel_blob_token

# EmailJS
NEXT_PUBLIC_EMAILJS_SERVICE_ID=your_service_id
NEXT_PUBLIC_EMAILJS_TEMPLATE_ID=your_template_id
NEXT_PUBLIC_EMAILJS_PUBLIC_KEY=your_public_key

4. Run the development server

npm run dev

Open http://localhost:3000 in your browser.

5. Build for production

npm run build
npm run start

🌐 Deployment

Learnova is deployed on Vercel. To deploy your own instance:

  1. Push your code to GitHub
  2. Import the repository on vercel.com
  3. Add all environment variables in the Vercel dashboard
  4. Deploy β€” Vercel handles the rest

Live at: https://learnova-web.vercel.app


πŸ‘₯ Meet the Team

Name Role
Prem Shaw Founder & Creator β€” Team Leader, Full-Stack Developer
Prashant Bhati Web Developer
Polawar Pranav Shirish Frontend Developer
Abir Ghosh Machine Learning Specialist
Anuj Ram Shrivastava ML & Backend Developer
Chandana S Testing & Documentation

πŸ’‘ Our Values

Value Description
⚑ Efficiency Streamline workflows and reduce redundancy so educators can focus on teaching
πŸ’œ Engagement Interactive and gamified experiences that motivate students
🌍 Accessibility Designed for all schools, even in low-network areas, with affordable solutions

πŸ“„ License

This project is private and maintained by the Learnova team.
Β© 2024 Learnova. All rights reserved.

About

The most advanced platform for curriculum planning and attendance management, designed for smooth academic management.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages