The members of the team are:
- Kaushik Chinta
- Chirag Mahesh
- Thom Treebus
- Aaron Patrick (Aaron) Monte
- Gunamay Sachdev
- Koichi Ueno
- Krishi Wali
- Kieran Woolley
The project consists of two applications. A React app that the client interacts with, and a Node.js server app that handles the backend/API. The two applications are located in separate directories.
The deployed version of the application can be found at pacto.co.uk.
The application has certain features that can only be viewed by users with a moderator role. The following credentials can be used to view the application as a user that is a moderator for one of the pacts (named the PactoPact):
email: pac.to@kcl.ac.uk
password: Password123
You can also register for an account as long as you have a valid UK university email address.
A video walk through of the application that demonstrates all the major features is available here.
A detailed guide on how to install the application and run it as a developer can be viewed in the Developer Instructions file (DevInstructions.md)
A report about the approach to testing that was used can be viewed in the Testing Report file (TestReport.md)
The packages used by the two applications are specified in package.json
The majority of components and elements used in the client application were created using MUI, a React library that uses Material Design. These components are labelled accordingly in the files where they are directly used. Additionally, some code that is shown in the MUI documentation has been used, this is also labelled in the files. All React MUI components are located in the following directories:
client/src/components
client/src/pages
client/src/layouts
client/src/providers
The following APIs are used in the project in both the client and server application:
- Cloudinary - Cloud based image hosting where all the images are stored (post images, avatars, etc.)
- Dicebar Avatars - The seeder uses Dicebar to generate avatars for the seeded users.
- University API - A list of all universities in the UK that includes their name and domains.
- Link Preview - Returns website information including a title, description, and thumbnail from any given URL, in JSON format.
The Certbot docker instructions were partially adapted from this blog