Get Smart Tutoring, or GST for short, is a tutoring service web application that utilizes React and microservices, containerized and hosted on Google Cloud Kubernetes.
-
User Registration
-
User Login with credentials, set non-critical user data into local storage
-
User Logout
-
Student search for tutors based on subjects of interest
-
Student apply for tutoring
-
Student/Tutor get all applications sent/received
-
Tutor accept/deny tutoring applications
-
Create chatroom once tutor accepts application
-
User get a list of created chats
-
User send message in a specific chatroom
- Get a list of subjects, with the ability to specify between
all,psle,olevelandalevel
- Cloud Reliability by replicas being set to 3; In the case that any of the pods go down, another one will be reinstated in place of the previous.
- Cloud Scalability through Google Cloud, where auto-scaling is set to listen to CPU usage to tune up/down the number of resources being deployed.
- Cost-effectiveness that ties in with scalability, as resources are only instantiated when necessary and taken down when no longer necessary.
- Agility through the use of rolling updates to replace old versions of the application with new ones with no disruption and no downtime to users.
- Portability through ease of deployment on other cloud services (so on this occasion, we utilised Google Cloud).
Get Smart Tutoring was developed using the following tools:
- Developed using Microservice architecture, specifically for the Golang backend.
- Back-end: Golang server using Mux Router
- Front-end: React.js & Bootstrap
- CORS Middleware Tool: Moesif Origin & CORS Changer (Used for testing)
- CORS Middleware Package: rs/cors - GO Package
- Database: Firebase
- Cloud deployment: Google Cloud using Kubernetes Engine
Latest deployment of the application on http://104.154.110.27:80
- This project was bootstrapped with Create React App.
- For File uploads: https://github.com/KunalN25/multiple-file-uploads/blob/main/src/App.js
- Upload file on Storage: https://www.makeuseof.com/upload-files-to-firebase-using-reactjs/









