DEV Community

Cover image for Dev Challenge: App to make you better at public speaking.
ElielSkillwell
ElielSkillwell

Posted on

Dev Challenge: App to make you better at public speaking.

This is a submission for the AssemblyAI Challenge : Sophisticated Speech-to-Text and No More Monkey Business.

What I Built

I build a speech analyzer using Assembly AI's Universal 2 Transcription and LeMUR feature. This is an advanced tool that is designed to help improve public speaking skills. It analyzes audio samples to provide insights on speech patterns, filler words, and speaking rate. The tool aims to capture the nuances of human speech and provide valuable insights.

Demo

Link to Github here.

Screenshots of the tool working

First window you see.

First window when you go to the website.

Audio File Uploaded.

Audio File Uploaded

Audio analysis and tips for the speaker.

Audio Analysis.

Possibility to record audio directly in the tool.

Possibility to record audio directly.

LeMUR Prompt to get tips for the uploaded speech.

lemur_resp = transcript.lemur.summarize(
    # context='Please list all the filler words used, and give tips on the transcription.',
    context='I am preparing to give a speech, and I need practical tips to make it engaging and impactful. Could you provide advice on how to improve, and give a list of all the filler words I used?',
    answer_format='a paragraph with the tips for the speaker, and a list of the filler words that are formatted this: Filler words: ["filler_word", ...]',
    final_model=aai.LemurModel.claude3_5_sonnet
).response
Enter fullscreen mode Exit fullscreen mode

Journey

I implemented the backend first, which I did with the Python Library Flask to make a simple backend server to receive audio files and recordings.. Then when I got the basic framework for that, I implemented the API Calls to AssemblyAI, where I got back the transcription. I later added the LeMUR feature to give tips to the speaker. When that was done, I implemented a modern Frontend where I could test the functionality. Later I changed the Frontend to look more modern and to be within my style.

After that I made some small changes, like using temporary files inside the backend, building scripts so this project could be run up easily, and made the Frontend more pleasant to look at.

Everything I did can be found on my Github. If you want to run the tool yourself, please follow the "How to run" instructions.

Top comments (0)