This repository contains the codebase for my university final year project which served as a key component of my dissertation. The primary focus of this project was to design and implement a web application with a strong emphasis on accessibility.
For my dissertation, I explored the critical role of accessibility in web applications, aiming to create an inclusive user experience for individuals with diverse abilities. The project aligns with the principles of universal design, ensuring that the application is usable by people of all abilities and disabilities.
- Node.js (Download and install)
- Visual Studio (Download and install)
- Clone/download the project from GitHub.
- Open the solution file in Visual Studio (File > Open).
- Navigate to the
WebAppProj
folder in Command Prompt or PowerShell. - Run the command
npm install
to install project dependencies. (Note: Ensure Node.js is installed correctly and try running as administrator if any issues occur.)
- Update the valid issuer and valid audience in
appsettings.json
to match the localhost port number on your machine.
- Restore the database from the
.bak
file located in theDatabase > Backup
folder.- Follow these instructions for assistance.
- Obtain the connection string and replace the existing string in
appsettings.json
in Visual Studio.- Ensure the general format of the new connection string matches the old one.
- Build the solution in Visual Studio (Build > Build Solution).
- Run the project (Debug > Start without debugging).
- Debugging is optional but might take longer to launch.
- Username: joe@joe.com
- Password: joepassword
- Username: jim@jim.com
- Password: jimpassword
You can also register a new user, but existing users have associated groups, quizzes, and results.
- Create a group.
- Add and remove trainees to and from that group.
- Create quizzes for trainees in that group.
- View a list of quizzes they have created and view them individually.
- View trainee results by quiz.
- Export results to CSV file.
- Complete quizzes available to them and view their results.
- View a list of uncompleted quizzes available to them that they can complete.
- View a list of completed quizzes and their score for each quiz.
- Adjust accessibility settings, such as the high contrast theme.
- The frontend application.
- Backend controllers.
- Database tables.
- Database stored procedures.
- Additional user-defined data.
This project is licensed under the MIT License. See the LICENSE file for details.