LAMP Application to conduct mock aptitude tests at SVCE.
Complete with user authentication, automatic result evaluation, attendance generation and much more...
- Motivation
- Installation And Setup
- Project Structure
- Features and Screenshots
- Tools
- Acknowledgements
- Contributors
- Contributing
- LICENSE
We run a chapter (club) at our college where we assist 500+ pre-final year students to prepare for their upcoming placements through a plethora of events such as mock interviews, aptitude tests and group discussions. It was a tedious task to prepare questions, invigilate tests, evaluate answer sheets, and give constructive feedback to students and so we decided to automate the process.
The software runs on PHP 7.2 and MySQL. The CSS framework Semantic UI was used for the design.
The Heroku platform was used for deployment.
- It is assumed you already know how to install LAMP stack. For macOS and Windows local development, I would recommend downloading [XAMPP (https://www.apachefriends.org/download.html) for a sandboxed environment.
Clone the repository to your C:\xampp\htdocs directory
git clone https://github.com/ForeseTech/AptitudeTestSoftware.git
Navigate to the cloned repo
cd AptitudeTestSoftware/
Start the Apache and MySQL modules on the XAMPP Control Panel
Navigate to http://localhost/AptitudeTestSoftware/ to view the application.
AptitudeTestSoftware/
.git # Git Source Directory
answers/ # Page to display answers
includes/ # Utility Helpers
leaderboard/ # Page to display scores of all users
login/ # Accept student data and show test rules
schema/ # SQL Schema
screenshots/ # Applications screenshots for documentation
static/ # Static CSS and JS files
test/ # PHP Script to display questions and question images
composer.json # Project Description and Dependencies
favicon.ico # Favicon for the application
index.html # Application entry point
LICENSE # MIT License file
Procfile # List of process types in an app
README.MD # Brief documentation
sql_connections.php # Database connection helper
Login Page | Test Page | Leaderboard Page |
---|---|---|
Question Input Page | Feedback Page | Answers Keys |
---|---|---|
We used a combination of many tutorials and StackOverflow posts to create this project. The following have been the most important.
- Connect PHP and MySQL using PDO
- Prevent Timer Reset on Page Reload
- Storing Images in MySQL using PHP
- Disable Right-Click on a Site
- Prevent Copying Text on a Site
- Design and Development - Nilesh D
- Design and Development - Arjun Aravind
Please feel free to fork, comment, critique, or submit a pull request.
This project is open source and available under the MIT License.