This is a submission for the Amazon Q Developer "Quack The Code" Challenge: That's Entertainment!
What I Built
I built "Retro African Safari Dash," an 8-bit style arcade game where players navigate through an African savanna, collecting cultural artifacts while avoiding obstacles 🦒🏺. The game features a complete serverless backend for leaderboard functionality, allowing players to submit and compare scores 🏆.
The project demonstrates how Amazon Q Developer can assist in creating both the frontend game mechanics and the serverless AWS infrastructure needed to support it 🚀. The game includes:
• Retro pixel art graphics with animated characters and objects 🎨✨
• Intuitive controls using arrow keys ⬆️⬇️⬅️➡️
• Progressive difficulty that increases over time ⏩
• Lives system and score tracking ❤️🥇
• Online leaderboard with authentication 🔐
• Responsive design that works across devices 📱💻
Demo
The game is playable at: https://d33ejg1jsmvn6g.cloudfront.net 🌐
For testing the leaderboard functionality, please use these credentials:
• Admin: username: admin 👑, password: 2025DEVChallenge 🛡️
• User: username: newuser 🧑, password: 2025DEVChallenge 🛡️
Code Repository
vec21
/
retro-african-safari-dash
A retro-style game built with Phaser.js and AWS serverless architecture for the AWS Amazon Q Challenge
Retro African Safari Dash 🦒🌍
A retro-style, 8-bit arcade game where players control a character navigating an African savanna, collecting cultural artifacts while avoiding obstacles. Built for the AWS Amazon Q Developer Challenge "That's Entertainment!" 🎮✨.
Play the Game 🎉
The game is available at: https://d33ejg1jsmvn6g.cloudfront.net 🌐
Project Overview 📝
This project demonstrates how Amazon Q Developer can be used to create an entertaining retro-style game with AWS infrastructure. The game features:
• 8-bit pixel art aesthetic inspired by 90s arcade games 🎨 • Player movement with arrow keys 🕹️ • Collectible artifacts that increase score 🏺 • Obstacles to avoid 🚧 • Lives system with progressive difficulty ❤️ • Leaderboard system using DynamoDB 🏆 • Serverless backend with AWS Lambda and API Gateway ⚙️
Architecture 🏗️
The project uses the following AWS services:
• S3: Hosts the static game files (HTML, CSS, JavaScript, assets) 📦 • CloudFront…
How I Used Amazon Q Developer
Amazon Q Developer was instrumental throughout the entire development process:
Game Development 🎲
I started with a basic concept and asked Amazon Q to help generate the core game mechanics using Phaser.js. It provided complete code for:
• Player movement and controls 🕹️
• Collision detection between player, artifacts, and obstacles 🚧
• Score tracking and lives system 📊
• Game state management (menu, gameplay, game over) 📋
When I encountered issues with sprite rendering, Amazon Q helped debug and fix the problems by suggesting proper scaling for my 1024x1024 sprite images 🖼️.
AWS Infrastructure 🏗️
For the backend, Amazon Q helped me:
• Generate Pulumi code to provision all required AWS resources 🛠️
• Create a DynamoDB table with appropriate indexes for the leaderboard 📈
• Develop a Lambda function to handle score submission and retrieval ⚡
• Configure API Gateway with proper CORS settings 🔗
• Set up CloudFront distribution for content delivery 🌍
When I encountered deployment issues with S3 bucket creation, Amazon Q identified the problem and suggested a solution using random name generation to ensure unique bucket names 🪣.
Integration and Testing 🧪
Amazon Q also assisted with:
• Connecting the frontend game to the backend API 🌐
• Implementing the authentication system with the required testing credentials 🔐
• Creating comprehensive testing instructions 📝
• Translating all code comments and documentation to English 🌍
• Debugging connectivity issues between components 🐞
The most impressive aspect was how Amazon Q could understand both the game development aspects and the AWS infrastructure requirements, providing cohesive solutions that worked together seamlessly 🤝.
Architecture 🏛️
The project uses a serverless architecture with:
• S3 for static web hosting 📦
• CloudFront for content delivery 🌐
• API Gateway and Lambda for backend processing ⚙️
• DynamoDB for data storage 📊
This project demonstrates how Amazon Q Developer can help create complete, production-ready applications that combine interactive frontend experiences with scalable cloud backends 🌟.
Top comments (0)