Inspiration

With the growing need for note-takers in classrooms and accurate, detailed notes in meetings, we decided to make an application that makes these things easily attainable. As students, we were all familiar with the countless emails the school faculty sends out all semester long, looking for students to help those who need assistance in taking notes. We came across Amazon Web Services Transcribe service, and decided we could do something about it. From there the possible use-cases grew to the average student looking for more exact note-taking tools and business professionals needing accurate meeting minutes.

What it does

lazyNote records audio in real-time, and sends it to one of our AWS S3 buckets. Once the user stops recording, our system, built entirely in AWS Serverless Lambda functions and coordinated by an AWS Step Function, begins running jobs to transcribe the user's audio data into a text file to be used at their convenience. Once our system is finished, an email is sent to the address the user supplies at the beginning of the process containing a link to the text object in S3. Once the link is clicked, a download of the file begins immediately.

How we built it

The front-end is built entirely in HTML5, CSS3, and vanilla JavaScript with some Bootstrap4 elements for styling. Connecting the front-end to the back-end is an AWS API Gateway, which directs traffic to our AWS Step Function. We registered our domain, lazy-note.com with Domain.com, and connected it to our system with AWS's Route 53. Our back end is a series of AWS Lambda functions written in Python3 utilizing the boto3 library.

Challenges we ran into

AWS permissions gave us a hard time for a while, as did getting browsers to give us access to the computer's microphone, and conversion between MP3 files and WAV files.

Accomplishments that we're proud of

Continuing to persist until the system worked. Creating an app that people (we) might actually want to use, and has to potential to help students who need learning support.

What we learned

Three of our members had never worked with AWS Serverless, so they learned a lot in a short amount of time. Two of them had never even worked with AWS at all. Our primary DevOps engineer learned how to add logic into a Step Function. We learned how to use the AWS Transcribe API and how to write API Gateways from scratch.

What's next for Lazy-Note

Eventually we want to increase security and establish user profiles with persistent data storage.

Built With

Share this project:
×

Updates