Inspiration
As a developer passionate about gaming, I've always been captivated by innovative card games like Hearthstone and Balatro. Their brilliant mechanics and engaging gameplay inspired me to take on an exciting challenge: creating my very first game from scratch. But I wanted to add my own twist to the mix. By combining cute Viking warriors with strategic card battles, I'm not just building a game – I'm exploring the possibilities of modern cloud gaming. This project is my journey into game development, powered by AWS services, proving that even mighty Viking battles can begin in the cloud!
What it does
In this tactical card game, you and your opponent each command a Viking army, battling for precious gold. After creating your account on battlecardgame.net, you can challenge other players to intense duels of strategy and wit. Each turn offers crucial decisions: Will you strengthen your army by dragging unit cards to your defense line, or attack directly with powerful weapons? You can launch attacks against enemy units or, if you spot a gap in their defenses, strike directly at their treasure chest! Each card displays its attack power (top left), defense strength (top right), and remaining hitpoints or gold (bottom center). The path to victory is clear but challenging: Outmaneuver your opponent and capture all their gold before they seize yours. But beware – a defenseless army (with no units having defense value) leaves your precious gold vulnerable to raids!
How I built it
Behind this Viking card battle lies a modern, serverless architecture that showcases the power of AWS cloud services. Built with a cloud-native mindset, the game leverages AWS Lambda and managed services to handle all server-side operations without managing traditional servers. The backend infrastructure is defined as code using AWS CDK, making it easily reproducible and maintainable. The frontend, crafted with Nuxt and enhanced by Phaser.io for smooth HTML5 game rendering, is hosted on AWS Amplify. Players enjoy a seamless authentication experience thanks to Amazon Cognito's managed login feature. Real-time battle updates are powered by AWS AppSync's GraphQL subscriptions, while game data resides in a single-table Amazon DynamoDB design. An innovative event system using Amazon EventBridge pipes and Lambda functions ensures players stay updated on every game action. The entire project lives in a monorepository with a fully automated CI/CD pipeline powered by GitHub Actions, ensuring smooth deployments whenever the infrastructure or game code changes. This architecture demonstrates how modern cloud services can turn a card game idea into a scalable, real-time gaming experience!
Challenges I ran into
Building my first game was an exciting journey that pushed me beyond my comfort zone. Despite my experience with AWS technologies from working at an AWS Premier Partner, game development introduced a whole new set of challenges. Learning Phaser.io's game development concepts from scratch meant diving into unfamiliar territory – from handling animations to managing game states. What truly transformed my development experience was Amazon Q Developer. It became my go-to companion, seamlessly integrated into WebStorm IDE, offering invaluable assistance with Phaser.io implementations and project architecture. Whether I needed code suggestions, examples of game mechanics, or help with overall project structure, Amazon Q Developer was just a keystroke away. The tool's ability to provide contextual help with both gaming concepts and AWS infrastructure made the development process significantly smoother. As someone who's experienced its impact firsthand, I can confidently say that Amazon Q Developer is a game-changer for developers, whether they're working with AWS services or tackling entirely new development challenges like game creation!
Accomplishments that I'm proud of
After weeks of learning, coding, and problem-solving, seeing my first game come to life fills me with genuine pride. Watching players battle with their Viking armies in real-time, all powered by a completely serverless AWS infrastructure, is incredibly rewarding. The project represents a perfect fusion of my passion for AWS cloud technologies and my newfound love for game development. Building a multiplayer card game without a single traditional server, relying purely on modern cloud services, proves that today's serverless architectures can handle even interactive gaming experiences. What started as an ambitious idea has become a fully functional game that not only entertains but also showcases the possibilities of cloud gaming. It's more than just a technical achievement – it's a milestone that marks my entry into game development, built exactly the way I envisioned it.
What's next for Battle Card Game and Viking Raid
The Viking battles are just beginning! I have exciting plans to enhance the gaming experience in several ways. First up is bringing the card battles to life with fluid animations that make every raid and defense feel more dynamic and impactful. Adding a carefully curated soundtrack and Viking-themed sound effects will immerse players deeper into each strategic encounter. Beyond the audiovisual upgrades, I'm exploring new game mechanics to add more strategic depth to the battles. Players can look forward to more tactical options and exciting card combinations that will make each match feel fresh and challenging. And for those seeking variety, I'm designing new themed card decks beyond the Viking realm. Imagine commanding armies of mythical creatures, steampunk warriors, or cosmic explorers – each with their own unique artwork and special abilities. The foundation is built, and now it's time to expand this universe of possibilities!
Built With
- amazon-cognito
- amazon-dynamodb
- amazon-eventbridge
- amazon-web-services
- aws-amplify
- aws-appsync
- aws-cdk
- aws-lambda
- nuxt
- nuxt-ui
- nx
- phaser.js
- typescript

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