Game Development with Angular: How to Build Your Own Tetris Clone

Mathias Raacke
Level Up Coding
Published in
4 min readNov 26, 2019

--

This is the first of (hopefully) many parts on game development with Angular. The first part will give you some background on the project I’m working on.

A few months ago, my wife was complaining that she could not find a good Tetris version for Xbox. “You are a software developer”, she said. “Can’t you just create one?”.

“Why not?” I said to myself. “it can’t be that hard!”. This seemed like an interesting challenge. So I quickly googled a few articles on game development for Xbox. I soon discovered that to get something onto the Xbox, I would either need to publish it through the store, or I would have to put my Xbox in a developer mode, which (as far as I understand) means that I would not be able to play “normal” games from the store anymore while developer mode is turned on. I would also have to use tools and frameworks that I don’t want to dig into right now, and which would not provide useful new knowledge that I could apply at work.

Then I remembered that the Xbox also has a browser. Unfortunately, it’s just Edge (the old one, not the new Chrome-based Edge). But hey, at least it’s not IE! So if I just create my game as a browser game, I won’t have to go through the store, and I won’t have to use developer mode. Also, I can use tools and technologies that I also use at work.

I decided to simply use Angular, since that’s what we currently use at Diamant Software to create our shiny new user interface.

Game development is different from developing user interfaces for an accounting application, so even though I’m not using a new framework, there is still enough new stuff for me to learn.

Some legal side note: The name “Tetris®” is owned by The Tetris Company. As far as I understand (I’m not a lawyer), they own the name “Tetris”, but the basic game idea is not protected by trademarks or copyright. So as long as I don’t call my game “Tetris”, I should be on the safe side. Besides, I’m not putting it in any app store and mainly use the game as example for my blog posts. Writing articles on how to create a game should not be that much different from all the “how to play XYZ on guitar”…

--

--