Inspiration
We believe that tutoring is an integral component of achieving academic success. Duke's current tutoring system is restrictive with a strict one tutor policy, lacks transparency because of the little to no agency a student has in choosing their tutor, and is expected to be an in person interaction. With so much homework, programming, and projects done on computers and online, there is an opportunity for transparent and flexible tutoring to be made available in this environment. For example, most of the work for EGR 103 requires programming. To supplement face-to-face sessions, tutors may want to access a student's machine remotely and provide assistance. This could be particularly helpful for sessions that are late at night or when the individuals are not close by (e.g. a first-year student on East campus and the upper-class tutor on West campus). By providing an online service, data regarding teaching and learning styles can be collected. Analysis of this data can be used to discover relations between different teaching and learning styles which can help improve approaches and strategies to tutoring.
What it does
Duke tutor is a remote tutoring platform that connects students with tutors and provides a flexible, effective, and interactive tutoring experience. Tutors registered with Duke tutor each have a profile including the class they tutor for, what time slots they can tutor at, and their type of teaching style. When students access Duke tutor, they first pick the class they want a tutor for and are presented a calendar of all tutors and their available times for that class. Students have the ability to view each tutor's profile to evaluate which tutor best matches them. A choice is made when the student chooses the name of the tutor, the time slot, and the learning style the best identify with. Once the request is verified, an email is sent to both the tutor and student including a link to the virtual tutoring session as well as a feedback form. The virtual session includes functions such as voice chat, screen share, and the control of a device from another device. After the virtual session both tutors and students will complete the feedback form rating the effectiveness of the session. Using the data from tutor teaching style, student learning style, and session rating, we hope to find relation between teaching and learning styles to provide the most effective tutoring service.
How we built it
Our front end framework uses Vue js. We use the Vuetify material design library for our components. Vue router is used for routing pages and Vuex for state management.
For our back end we are using Firebase. We make use of Cloud Firestore databases to update our data in real time. We are also using Cloud Functions in firebase to make use of the google calendar API to schedule tutoring times. The ConnectWise api is used to create a new session and email the links to users. Clicking these links will connect tutors and students to an online session where they can share their screen and communicate by voice.
Challenges we ran into
Calendar API was still is a challenge using cloud functions Date time formatting continues to be inconsistent
Accomplishments that we're proud of
Post and send virtual session emails using ConnectWise api Have a working real time database Functioning front end application with modern material design standards.
What we learned
We learned a lot about the functionality and flexibility of Firebase Implementing ConnectWise API Implement Google's Calendar API How to use vuetify to easily create a well designed front end
What's next for Duke Tutor
Fully implement Calendar API and correctly format date time. Develop teaching learning style analysis. Implement in classes at Duke.
Built With
- firebase
- google-calendar
- html
- javascript
- vue
- vuetify

Log in or sign up for Devpost to join the conversation.