Inspiration

I have always been deeply interested in Cloud Native and Serverless software architectures, which led me to pursue the AWS Developer Associate Certification. I recently passed the exam, and I was eager to start applying what I had learned by building real-world applications.

Another significant source of inspiration was my five-year-old son, who loves language-learning games. However, most language apps available today require the ability to read and write, which my son at the age of 5 has not yet learned. This motivated me to create an AI-powered game tailored to young children who cannot yet read or write, allowing them to learn new languages in a fun, interactive way.

What it does

The game is designed to help young children learn new languages without needing to read or write. It achieves this by:

  • Leveraging AWS Translate to automatically translate English words into foreign languages.
  • Using AWS Polly to generate AI-powered voice audio for a seamless listening experience.
  • Providing an intuitive, interactive interface for children to engage with language learning.

How I built it

  1. Architecture: I designed a serverless architecture using AWS services such as Lambda, DynamoDB, S3, and CloudFront to ensure the game was scalable, cost-effective, and highly available.
  2. Frontend: The frontend is a static web application hosted on S3 and distributed globally using CloudFront.
  3. Backend: The backend is powered by API Gateway and AWS Lambda,
  4. Game Content: foreign word were generated using AWS Translate and the audio files were generated using AWS Polly.
  5. Data Storage: I used DynamoDB to store game-related data.
  6. Security: I ensured secure communication between components using IAM roles, CloudFront Origin Access Control, and API Gateway for backend interactions.

Challenges I ran into

  1. Adapting to New Tools: While I had studied AWS services for my certification, using them in a real-world application introduced unique challenges, especially integrating different services with each other.
  2. Securing the Application: Implementing secure access to the backend API while maintaining simplicity in architecture took some trial and error, especially when integrating CloudFront and API Gateway.
  3. Optimizing Costs: Balancing security with cost efficiency was another challenge, as I aimed to make the game endpoints secure without incurring unnecessary expenses.

Accomplishments that I am proud of

  • Successfully built a fully functional cloud-native serverless application that delivers an engaging and educational experience for young children.
  • Leveraged AWS AI-powered services AWS Translate and AWS Polly to easily generate game content
  • Developed a secure and scalable architecture using best practices for serverless applications.
  • Created a meaningful project inspired by my son, making it both personal and fun.

What I learned

Through this project, I gained hands-on experience with building cloud-native serverless applications on AWS. Specifically, I:

  • Learned to integrate AWS Translate to automatically translate English words into foreign languages.
  • Used AWS Polly to generate AI-powered voice audio for a seamless listening experience.
  • Explored best practices for serverless application development, including scalability, security and cost-efficiency.
  • Improved my knowledge of managing infrastructure as code and configuring AWS resources using AWS SAM

AWS services made the development process intuitive and efficient. Additionally, Amazon Q played a pivotal role throughout the development process. The Amazon Q extension for VS Code was invaluable for its inline code suggestions, helping me write and debug application logic efficiently. The integrated Amazon Q chat window in VS Code was particularly helpful in drafting SAM template definitions, generating architecture recommendations, and ensuring adherence to best practices for serverless applications. Beyond AWS-specific guidance, Amazon Q also provided suggestions for frontend development, including HTML, JavaScript, and CSS, which significantly accelerated the overall development process. This real-time assistance from Amazon Q streamlined troubleshooting and decision-making, enabling me to focus on creating a robust and scalable application.

What's next for AWS-Serverless-AI-Powered-Language-Game

Moving forward, I plan to:

  • Develop a new AI-powered game mode using speech-to-text with Amazon Transcribe for speaking and pronounciation excercises
  • Develop a new AI-powered game mode for free text chatbot in foreign language using Amazon Lex
  • Expand the game to include more languages and advanced vocabulary levels.
  • Integrate AI models for personalized learning experiences based on user progress.
  • Develop mobile and tablet-friendly versions to make the game more accessible.
  • Collaborate with local educators to expand the reach of the game

This project has strengthened my confidence in developing cloud-native serverless applications and has inspired me to continue exploring the vast possibilities of AWS.

Built With

Share this project:

Updates