Skip to content

Examify is an online examination and classroom management system designed for educational institutions. Built to emulate key features of Google Classroom, it offers seamless login, class joining via code, exam management, result processing, and user roles for students, teachers, and administrators.

Notifications You must be signed in to change notification settings

himanshsharmaa/Examify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Examify

Examify is an online examination and classroom management system designed for educational institutions. Built to emulate key features of Google Classroom, it offers seamless login, class joining via code, exam management, result processing, and user roles for students, teachers, and administrators. The project is crafted with a modern tech stack, featuring PHP, MySQL, JavaScript, and Tailwind CSS, ensuring a polished and interactive UI enhanced by Animate.css.

 Header

Typing SVG

🌟 Features

  • Secure Authentication: Role-based login for students, teachers, and admins.
  • Join Classes with Code: Students can join with a unique class code.
  • Comprehensive Dashboard: Personalized views for students, teachers, and admins.
  • Exam Management: Create, manage, and monitor exams with ease.
  • Interactive UI: Modern, responsive design using Tailwind CSS and Animate.css.
  • Result Processing: Efficient result viewing and management for teachers and students.

🔧 Tech Stack

📂 Project Structure

Examify/
│   .htaccess
│
├───assets
│   ├───css
│   ├───fonts
│   │       Roboto-Bold.tff      
│   │       Roboto-Regular.tff   
│   │       
│   ├───img
│   │   │   home.png
│   │   │   
│   │   ├───banners
│   │   └───icons
│   │           settings_icon.png
│   │           user_icon.png
│   │
│   └───js
│
├───config
│       constants.php
│       cors.php
│       env.php
│       functions.php
│       routes.php
│
├───database
│       db_config.php
│       migrate.php
│       seed.sql
│
├───docs
│       API.md
│       DB_STRUCTURE.md
│       LICENSE
│       README.md
│       SETUP.md
│
├───logs
│       access.log
│       error.log
│       websocket.log
│
├───public
│   │   404.php
│   │   class.php
│   │   create_class.php
│   │   index.php
│   │   join_class.php
│   │   login.php
│   │   manage_class.php
│   │   manage_test.php
│   │   result.php
│   │   select_role.php
│   │   signup.php
│   │   student_dashboard.php
│   │   student_profile.php
│   │   take_test.php
│   │   teacher_dashboard.php
│   │   teacher_profile.php
│   │   test.php
│   │   view_test_history.php
│   │
│   └───includes
│           footer.php
│           header.php
│
├───src
│   │   api.php
│   │   ws_server.php
│   │
│   └───controllers
│           auth.php
│           create_class.php
│           create_test.php
│           dashboard.php
│           get_results.php
│           join_class.php
│           login.php
│           logout.php
│           manage_class.php
│           profile.php
│           realtime_updates.php
│           register.php
│           submit_test.php
│
├───tests
│       auth_test.php
│       class_test.php
│       realtime_test.php
│       test_submission_test.php
│       utils_test.php
│
└───uploads
    ├───profile_pics
    │       student1.jpg
    │       student2.jpg
    │       teacher1.jpg
    │
    ├───reports
    │       report1.pdf
    │       report2.pdf
    │       report3.pdf
    │
    └───test_files
            answer_key.txt
            test1.pdf
            test2.docx

🚀 Installation

  1. Clone the repository:
    git clone https://github.com/himanshsharmaa/Examify.git
    cd Examify
  2. Install dependencies:
    composer install
  3. Configure the database in config/database.php.

💡 Usage

Run the project on a local server (e.g., XAMPP, WAMP) and access it through http://localhost/Examify/.

📁 File Descriptions

  • assets/: Contains CSS, fonts, images, and JavaScript files.
  • config/: Configuration files for constants, CORS, environment variables, functions, and routes.
  • database/: Database configuration, migration, and seed files.
  • docs/: Documentation files including API, database structure, license, and setup instructions.
  • logs/: Log files for access, errors, and websocket activities.
  • public/: Publicly accessible files including PHP scripts for various functionalities and includes for header and footer.
  • src/: Source files including API, websocket server, and controllers for various functionalities.
  • tests/: Test files for authentication, class management, real-time updates, test submission, and utility functions.
  • uploads/: Uploaded files including profile pictures, reports, and test files.

🔮 Future Enhancements

  • Real-time Notifications: Implement real-time notifications for exam updates and results.
  • Advanced Analytics: Provide detailed analytics and reports for teachers and administrators.
  • Mobile App: Develop a mobile application for easier access and management.
  • Multi-language Support: Add support for multiple languages to cater to a diverse user base.
  • Integration with LMS: Integrate with popular Learning Management Systems (LMS) for seamless data exchange.

📝 License

This project is licensed under the MIT License.

🤝 Contributing

Contributions are welcome! Please open an issue or submit a pull request.

📬 Contact

Feel free to reach out via Email.


Made with ❤️ by Keplor.Io

About

Examify is an online examination and classroom management system designed for educational institutions. Built to emulate key features of Google Classroom, it offers seamless login, class joining via code, exam management, result processing, and user roles for students, teachers, and administrators.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages