Inspiration

The inspiration behind this project stemmed from a desire to support children with Cerebral Palsy (CP)—a condition that can impact movement, coordination, and even communication. I wanted to create something simple but impactful: a tool that could read text out loud to help these children start learning words, numbers, or even stories.

What it does

CP-Learn-Buddy is a simple yet powerful learning assistant designed specifically for children with Cerebral Palsy (CP). It takes any written text — like a word, sentence, or even a paragraph — and converts it into clear, spoken audio using Amazon Polly.

This helps children who may struggle with reading or speech development to still engage with educational content, practice pronunciation, or just start learning in a way that's more accessible to them.

Behind the scenes, the app uses a Flask backend that connects to AWS services like Lambda and S3. When text is submitted, it's processed in the cloud, turned into audio, and stored in an S3 bucket — returning a playable audio link that can be accessed instantly.

It's fast, simple to use, and made with love for inclusive education.

How we built it

This is a serverless application built using AWS services. Here's what powers it:

  • AWS Lambda: Handles the backend logic without needing to manage servers.
  • Amazon Polly: Converts plain text into natural-sounding speech.
  • Amazon S3: Stores the generated audio files and gives us a public URL to share or play.
  • API Gateway: Creates a REST API so that I can send text and get back audio.

Everything is tied together in a simple but powerful way. You send a piece of text to an endpoint, and within seconds, you get back a link to the audio version of that text.

Challenges we ran into

  • IAM Permissions: Getting the right permissions for Lambda to access Polly and S3 was not easy at first. I ran into many "Access Denied" errors, but I learned how to fix them one by one.
  • Bucket Policy Confusion: S3 initially blocked public access to the audio, and I had to adjust the bucket settings carefully without making it too open.
  • Slow Internet & Testing: At times, testing with tools like Postman was slow or failed, and I had to stay patient and try again.
  • Learning AWS from Scratch: Understanding Lambda, API Gateway, and IAM was challenging, but with guidance and persistence, I got it working.

Accomplishments that we're proud of

We're really proud that we managed to build a working application that takes written text and turns it into clear audio using AWS tools. The best part is that it’s designed to help children with Cerebral Palsy get started with learning through audio — making education a little more accessible. Getting everything set up on AWS (especially Lambda, API Gateway, Polly, and S3) felt overwhelming at first, but seeing it all come together and actually work was such a satisfying moment.

What we learned

  • We figured out how to build a Flask app that integrates with AWS Lambda. This project was full of firsts. We learned how to use Amazon Polly for Text-to-Speech, how to trigger Lambda functions via API Gateway, and how to securely upload and access files using Amazon S3. We also realized how important IAM permissions are — and how tricky they can get! Most importantly, we learned how cloud tools can make a real impact, even in simple ways, when used creatively.

What's next for CP-Learn-Buddy

  • Add a user-friendly interface where users can type or upload text and hear it immediately.
  • Allow the app to support multiple languages and voices for greater accessibility.
  • Include visual or animated elements to support children who benefit from visual cues alongside audio.
  • Explore integration with other educational tools or platforms.

We believe this project has real potential to make a difference — and we’re not stopping here.

Built With

Share this project:

Updates