Inspiration

Being a student can be hard, but it doesn't have to be! We're engineering students who have spent the entirety of our first year experimenting with different methods of productivity boosts and acclaimed "hacks." However, the world has changed a lot over the past couple of years, months even, and it'll continue to do so. So why not equip yourself with the best tools available to make this academic year the best one ever? And thus, Lecture-Lenz was born. It was made to combine the power of AI and voice recognition to enhance the learning experience for students in lectures. It's challenging to keep up with professors in class sometimes, and we wanted to create something that would alleviate that issue.

What it does

Lecture-Lenz records audio from lectures and creates a live transcription of the class so that students can view live captions and be able to keep up with the lecture. Once the recording is over, the text generated from the transcription is then used to create notes for that class and to create a quiz to test the student's understanding of the material.

How we built it

We created a web application for Lecture-Lenz using React.js, Node.js, Express.js, Firebase, GCP, and OpenAI's API. To enable speech-to-text functionality, we used Google Cloud API's Speech-to-Text function. On the front end, we used React.js to create an appealing and reactive UI. On the backend, we used Firebase for user authentication and database storage which is hosted on Firebase Firestore and Google Cloud Platform. Additionally, we used Node.js and Express.js for routing on the backend. Finally, we used OpenAI's GPT3.5 model to generate notes and quizzes based on the audio transcription.

Challenges we ran into

One major challenge we ran into was saving the state of the app during CRUD operations (create, read, update, and delete). We managed to fix this issue through the usage of dependency injection (by using the Context API) and by decoupling our components to limit re-rendering as much as possible. This ensured that our app ran efficiently, reduced number of API calls, and was able to save the state of the data before saving it to the database.

Accomplishments that we're proud of

We are proud that we were able to generate notes and quizzes that were tailored specifically to what was mentioned in the input lecture (audio recording). We really believe that this will help students (and even professionals) have a higher chance of success in their classes and boost their overall productivity. It would also be a great help for those who face challenges with hearing.

What we learned

We learned how to create a full-stack web application using React.js, Firebase, and AI. We also learned a lot of the best practices when it came to state management and were able to reduce our latency by over 50%.

What's next for Lecture-Lenz

In the future, we plan on adding a few features to enhance the user experience and functionality of the app. Firstly, we would like to add features to export notes and quizzes to popular note-taking apps like Notion. Furthermore, we would also like to add functionality to download notes as pdf files to allow users to read and study on-the-go. Finally, we plan on making quizzes more comprehensive (broad range of concepts from lecture/session, wide range of difficulties, mix of conceptual and theoretical questions, add long answer questions that would be graded by GPT model, etc.).

Share this project:

Updates