About the Project
Inspiration
The inspiration for the "SnakeRun" game came from the classic Snake game, a timeless arcade game that has entertained millions. The goal was to bring a fresh and fun experience by implementing modern technologies while maintaining the charm of the original game. With the growth of AI and cloud computing, I decided to incorporate tools like Amazon Q Developer to improve my development speed, debug challenges, and make the project more efficient. The hackathon provided a perfect opportunity to create something both fun and technically innovative, using AWS services to add a cloud-based edge to the game.
What it does
"SnakeRun" is a modern version of the classic Snake game where the player controls a snake to collect food and avoid running into walls or itself. The game features a high-score leaderboard, so players can track their best performances. The game is hosted securely using AWS Amplify for fast and reliable deployment, while the assets are stored in Amazon S3. The real-time updates and storage of player data make this game an interactive experience, with future plans to enhance features using more AWS services like DynamoDB for data persistence.
How we built it
The game was built from scratch using Python, leveraging libraries such as Pygame for game development and Pygbag to make the game browser-compatible. Throughout the project, Amazon Q Developer played a key role in streamlining the process. From ideation to implementation and even deployment, Q Developer assisted with generating code snippets, debugging, and offering suggestions for improvement. It helped with everything from simple game mechanics to more complex server-side code.
Game Development: I started by building the core game mechanics using Pygame. This included designing the snake, food items, and walls, as well as handling player input and game state logic.
Deployment: Once the game was working locally, I used AWS Amplify to deploy it. AWS Amplify provided a secure and seamless way to host the game on the web. Amazon S3 was used to store all the necessary assets like images, sounds, and APKs.
Using Amazon Q Developer: I logged into AWS Builder ID and used Amazon Q Developer in my VS Code to generate and debug code. Whether I needed to optimize game code, fix errors, or learn how to integrate new features, Amazon Q Developer helped me solve challenges quickly. I used it extensively in the ideation phase to plan out features like high scores and user authentication.
How i used Amazon Q Developer in building app
Amazon Q Developer is essentially like GPT for developers, providing support with code writing, debugging, and suggestions on how to improve or optimize the code. I used Amazon Q Developer from the start to ideate how the game would function. I started by asking questions like, "How can I store and display high scores?" or "How can I integrate the dynamoDB with my code?". Amazon Q Developer gave me clear answers, code examples, and even additional suggestions to boost my productivity. The AI assistant did not just provide code snippets but also helped me understand the underlying logic behind each solution. This was extremely useful because it guided me through challenges I might have faced otherwise, saving me a lot of time and effort.


AWS Services I Used in Building the App
Amazon Q Developer: Used in Visual Studio Code for generating code snippets, debugging, and optimizing game logic. Chosen to save development time and ensure the code is error-free and efficient. Boosted productivity by providing accurate and context-aware code suggestions, allowing focus on game design and functionality.
AWS Amplify: Hosted the SnakeRun game for fast and secure deployment. Selected as a scalable and reliable hosting platform that simplifies deployment and management. Ensured a seamless and responsive experience for end-users with minimal latency.
Amazon S3 (Simple Storage Service): Stored static assets like images, game files, and APKs in S3 buckets. Used to securely store and easily retrieve assets, ensuring durability and availability. Simplified asset management and ensured quick loading of resources for users, enhancing gameplay.
Challenges we ran into
Debugging the Game: One of the challenges was ensuring that the game logic, especially around collisions and scoring, was flawless. At one point, the snake’s movement would get stuck, or the collision detection wasn’t working as expected. Amazon Q Developer helped me by providing suggestions and code snippets to optimize this behavior.
Browser Compatibility: Making the game run smoothly in a browser was tricky. Initially, the game was developed for local execution using Pygame, but when trying to host it on the web, I ran into performance issues. I had to use Pygbag to make the game compatible with browsers, which required significant learning and adaptation.
Deploying and Scaling: Deploying the game on AWS Amplify was easy, but ensuring that it was scalable and could handle multiple users was a challenge. I had to research and implement appropriate settings for the backend and hosting to ensure that the game was stable and secure.
Learning New Technologies: I also faced the challenge of working with Amazon Q Developer for the first time. While it was a fantastic tool, getting used to the AI’s suggestions and learning how to fully leverage it took some time.
Accomplishments that we're proud of
First Game Deployment: This is the first game I’ve ever developed and hosted on a cloud platform. It’s a huge accomplishment for me to see it working smoothly, especially given that it’s hosted on AWS.
Using Amazon Q Developer: The integration of Amazon Q Developer was one of the best decisions I made. It significantly boosted my productivity by quickly solving coding issues and offering suggestions that saved me time. This AI assistant has been a valuable tool in this hackathon.
Building with AWS Services: Leveraging AWS Amplify for deployment and Amazon S3 for file storage helped me understand how cloud technologies can be used to make games scalable and more robust.
What we learned
Game Development Skills: Through this project, I gained a much deeper understanding of Python and game development frameworks like Pygame. I learned how to handle key events, create interactive user interfaces, and deal with collisions and other game mechanics.
AWS Integration: I learned a lot about AWS services, including AWS Amplify, Amazon S3, and Amazon Q Developer. These tools made the development process smoother and more efficient, allowing me to focus on creating features rather than dealing with technical roadblocks.
Deployment and Scalability: Learning how to deploy and scale an application using AWS Amplify gave me insight into how cloud technologies can be used to enhance the game’s performance and availability. I also learned how to manage resources like storage and computing power effectively.
AI-Assisted Development: Using Amazon Q Developer was a game-changer in terms of boosting productivity. I’ve learned that AI can help with more than just basic code generation – it can assist in debugging, suggest improvements, and even generate entire chunks of code based on simple prompts.
What's next for SnakeRun
Multiplayer Support: The next step is to implement multiplayer support so players can compete in real-time. This feature would require a backend to manage player data, scores, and matchmaking. Amazon DynamoDB will likely be used for this.
AI Integration: I plan to enhance the game by integrating AI elements to improve the gameplay. For example, introducing a challenging AI opponent that adapts to the player's strategy.
Mobile Version: Since the game is currently web-based, the next goal is to develop a mobile app for Android and iOS. I’ll explore AWS Mobile Hub and related services to make this transition smoother.
New Features: I’m also considering adding power-ups, challenges, and levels to increase the complexity and make the game more engaging. Player achievements and badges will be added to the leaderboard.
Overall, "SnakeRun" has been an exciting project to work on, and I’m looking forward to adding even more features to it in the future!
Built With
- amazon-q-developer
- amazon-web-services
- amplify
- pygbag
- python
- s3



Log in or sign up for Devpost to join the conversation.