🧠 Inspiration
We were inspired by the fast-paced gameplay and polish of Brawl Stars and wanted to create a simplified, browser-based version playable entirely using frontend tech. The idea was to blend game development with Angular, pushing the boundaries of what's possible in a web app — all without a backend or game engine.
🎮 What it does
MiniStars is a lightweight browser arena game where players:
- Select a map and brawler
- Set the difficulty
- Enter the arena to battle AI bots
- Shoot using the
spacebarand dodge attacks - Pick up power-ups to heal
- Win by eliminating all bots or lose if defeated
It’s fully playable, works on desktop browsers, and is built entirely in Angular using HTML5 Canvas.
🛠 How we built it
- Framework: Angular 17 (standalone components)
- Styling: Tailwind CSS
- Canvas Rendering: HTML5 Canvas 2D API
- State Management: Angular services
- Assets: Images from Supercell Creator Kit and open game art
- Routing: Angular router for screen transitions (Home → Maps → Brawlers → Arena)
All logic (movement, firing, AI, collisions, game-over conditions) is written from scratch using TypeScript and the native canvas context.
🧗♂️ Challenges we ran into
- Creating a smooth canvas-based game inside Angular's component system
- Handling sprite assets and fallback for failed image loads
- Managing real-time movement and physics without a game engine
- Making it visually clean and snappy with only frontend tech
- Integrating AI behavior (chase + shoot + cooldown logic)
🌟 Accomplishments that we're proud of
- Fully working Brawl Stars–style game with AI bots, multiple maps, brawlers, and powerups
- Built entirely in the browser — no server, no DB, no backend logic
- Used Angular in an unconventional way for game rendering
- Polished UI with artwork from real assets
- Solo-built and completed in time for the hackathon
📚 What we learned
- Game logic using native Canvas with Angular
- Sprite/image management and canvas drawing
- Timing mechanics like ammo cooldown and health regeneration
- Creating reusable and themeable UI components in Angular
- Importance of game flow: map/brawler selection → battle → results
🚀 What's next for MiniStars
- Add multiplayer support (WebRTC or socket.io)
- Improve AI with smarter dodging, attack patterns, and difficulty levels
- Add new weapons, brawler abilities, and stats
- Introduce a map editor and level creator
- Add touch controls for mobile
- Deploy public demo and collect feedback
Built With
- 2d
- angular.js
- canvas
- css3
- html5
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.