Inspiration

When I started learning about AWS services, I encountered many services whose names I was seeing for the first time. This sparked the idea: why not create a game to help others become more familiar with AWS services. So I created "Cloud Guesser Game".

What it does

The challenge of the game is to guess 3 AWS services from a list of 10 randomly provided services as quickly as possible. These 10 services are generated from a pool of common AWS services, so chances are you’ll come across some that are new to you too!

How I built it

  1. Build the core game with Spring Boot The core game is built using Spring Boot, which is a solid choice due to its features like auto-configuration, dependency injection, and Spring Security for managing game sessions and player authentication.
  2. Integration with AWS DynamoDB To store leaderboard data for your game, which is crucial for tracking player scores and ranking.
  3. Integration with Elastic Cache To improve query speed for leaderboard data by caching frequently accessed data.
  4. S3 and CloudFront for Static Files To store and serve static files (e.g., JavaScript, CSS, audio, image) efficiently.
  5. AWS Cognito for Authentication
  6. Using Certificate Manager and Route 53 To secure traffic with SSL/TLS certificates and manage custom domain routing.
  7. CloudWatch To monitor and log application metrics and system performance.
  8. Parameter Store for Secret Parameters To securely store sensitive configuration parameters.
  9. AWS IAM for EC2 Role To define and manage permissions for EC2 instances.
  10. Key Management Service (KMS) To encrypt sensitive data at rest.

Challenges I ran into

  1. Lack of Experience with AWS Services: I had no prior experience with AWS services like ElastiCache, Parameter Store, and Beanstalk.
  2. Deployment Errors: Encountered errors when deploying Beanstalk with a Launch Configuration.
  3. Log Access Difficulties: It was challenging to view application logs on the EC2 instance. To address this, I used CloudWatch Logs to monitor application logs in real-time.

Accomplishments that I'm proud of

  1. Cloud Guesser Game I successfully developed the Cloud Guesser Game, which is both engaging and challenging. Players must guess the correct three AWS services as quickly as possible.
  2. Extensive AWS Integration The game integrates a wide range of AWS services (14 in total) demonstrating a deep understanding of AWS capabilities and effective service utilization.
  3. Cognito
  4. AWS Beanstalk
  5. Dynamo DB
  6. Elastic cache
  7. Parameter store
  8. Cloudfront
  9. S3
  10. Certificate-manager
  11. Route 53
  12. Load balancer
  13. CloudWatch
  14. Auto Scaling Group
  15. Key Management Service
  16. AWS IAM

What I learned

  1. AWS Services and Practical Usage: I explored and practiced using various AWS services, including:
  2. Beanstalk
  3. DynamoDB
  4. ElastiCache
  5. Parameter Store
  6. CloudWatch
  7. EC2
  8. Certificate Manager
  9. Route 53
  10. Cognito
  11. CloudFront
  12. S3
  13. Key Management Service (KMS)
  14. Amazon Q Developer: I used Amazon Q Developer to:
  15. Seek guidance on integrating AWS services into my game.
  16. Find solutions to errors encountered during game development.

What's next for Cloud Guesser Game

Explore and integrate additional AWS services to enhance the game's functionality and performance.

Built With

Share this project:

Updates