Skip to content

Ditch Google Sheets. Office Hours is a platform with tailored features to help streamline your office hours experience.

License

Notifications You must be signed in to change notification settings

radicalplatforms/office-hourly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Office Hourly

Team

  • Radison Akerman (University of Illinois - Chicago)
  • Yelyzaveta Andryushchenko (University of Illinois - Chicago)
  • Sengdao Inthavong (Northwestern University)
  • Richard Yang (University of Wisconsin-Madison)

Inspiration

Office hours can be a frustrating experience for students and instructors alike. For students, finding a convenient time slot can be difficult. As students and TAs ourselves, we experienced this struggle from both perspectives. Managing long queues of spreadsheet names can be complicated and often confusing in person, while students find it difficult to reach their TA without any insight on wait time or number of students in the queue with them. It seems crucial to implement a tool that allows instructors and students manage Office Hours experience easier and in a much nicer interface, allowing for more functionality and less ambiguity compared to the current system. We believe that our project can improve day to day lives of students and instructors at any institution, making more efficient and productive.

What it does

Ditch Google Sheets. Office Hours is a platform with tailored features to help streamline your office hours experience. As a student, organize their classes all on one platform, seamlessly join a queue for a class mentor, and access real-time wait times for the queue. As an instructor, manage and view student office hour requests, customize your OH session to fit your schedule, effortlessly track OH attendance. With our platform, students can easily access mentorship and real-time wait times, while instructors can save time and focus on what they do best. Building a learning community.

How we built it

We built our project leveraging several technologies that helped us create a robust and secure platform for organizing the office hours experience for instructors and students. We used Hono.js, Vue.js, Nuxt.js as our frameworks, FaunaDB as our database, Zod as a validation tool, Auth0 and Author for authentication, Insomnia and Postman for testing, and Cloudflare Workers to globally distribute our services. Hono.js is a JavaScript framework that is utilized to build serverless applications in a lightweight fashion for developers. It has become a popular choice for building microservices. FaunaDB is a serverless, globally distributed, multi-model database that offers a flexible, scalable, and secure data storage solution — built on the fundamentals of developer productivity and seamless scalability. Additionally, we developed Author, which is a user authentication proxy that provides user detail storage over all of our services. Users authenticate on the frontend using Auth0, and backend RF applications can query Author to obtain app-specific user data.

Challenges we ran into

There were several challenges that we faced while developing this project, some of which were related to the use of new technologies such as HonoJS and FaunaDB where we faced compatibility issues when integrating them with other technologies. We had to ensure that HonoJS and FaunaDB were compatible with our existing tech stack and that any dependencies were properly managed. Because we used new technologies, there were limited resources and support available compared to more established technologies. This made it much more challenging to find solutions to any problems or issues that we encountered, and this project put our debugging abilities to the test. We also had to ensure that the application is user-friendly and easy to use, which proved to be a significant challenge when dealing with complex scheduling systems and data structures. As our project involves sensitive data like student names and class details, we needed to ensure that our app is secure and that user data is protected. This required us to implement security measures such as authentication.

Accomplishments that we're proud of

We're proud of developing a functional platform improves the office hours experience, our great collaboration dynamic under a significant time constraint, designing a beautiful user-friendly interface that prioritizes student/instructor needs, building a fully functional API with cutting-edge technologies and database systems, learning new languages from scratch such as Typescript, and creating a user authentication proxy Author to provide user detail storage using Auth0.

What we learned

During the project process, we learned a lot about working with new technologies and how to overcome challenges that arise during development. We gained experience in utilizing HonoJS and FaunaDB in a practical setting and became familiar with their strengths and limitations. Additionally, we learned about the importance of collaboration and communication in a team setting. We had to work together closely to ensure that our individual contributions fit together cohesively and that we were all on the same page with the project's goals and timeline. Furthermore, we learned the importance of testing and debugging our code thoroughly. We discovered that thorough testing not only helps us catch and fix errors early on but also helps prevent future errors from occurring.

What's next

We'd love to add functionality for statistics and in-depth insights that help students and instructors with their office hours experience whether that's through weekly statistics on the busiest times or through a catered experienced offered beyond the queue. We think this project idea can be applied to any educational situation and feel that many students and professors can relate to the problem a frustrating office hours experience. To us, it'd be amazing to have a platform that promotes collaboration and builds community and we'd love to see something like this implemented at our own schools.

About

Ditch Google Sheets. Office Hours is a platform with tailored features to help streamline your office hours experience.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •