A 2D Android game featuring an original and simple gameplay loop: tap the screen to prevent the rocket from crashing into the borders. The challenge lives entirely in timing and rhythm.
The backend is powered by Firebase for authentication and a real-time database. UniRX was used as the reactive framework, keeping UI and game state in sync without tightly coupling systems.
Extenject handles dependency injection across the project, making the codebase straightforward to extend and test. The combination of reactive programming and DI kept the architecture clean despite the fast-paced development timeline.
Architecture
Design patterns applied include Object Pool for projectile management, MVPR for the UI layer, and Observable for event propagation across systems. Each pattern was chosen specifically to reduce coupling and keep frame-rate impact minimal.