Gamduel is an online, cryptocurrency based crash and roulette game. A crash game is a game in which a number gets incremented with a random speed from 0 until it reaches a determined end-point, which is called a crash.
Because the crash point is randomly generated by an algorithm (thus being unknown to everyone), the bettors goal is to opt into a bet and manage to cash out before the game reaches the crash point, the incremented number representing a multiplier of the potential earnings.
Example game scenarios:
“User enters the game with 100, crash point is a 3x, but user does not cash out so he loses 100”
“User enters the game with 100, and caches out at 1,5x, having a total win of 50” (1,5x times 100= 150)


The solution consists of an Angular reactive SPA that interacts with a Java Spring backed API for performing the betting operations using cryptocurrencies. For rendering the crash game, we mad euse of d3.js which is a pretty useful library for manipulating svg elements in an optimal way.
The roulette game is based on animations for creating the impression of a spinning wheel



Angular 8 reactive SPA as the UI solution

Spring MVC

Spring MVC is used to create a RESTful API that the SPA consumes


d3.js is used as a library for creating the dynamic crash game


We've used sockets as a means of notifying the clients


The blockchain API is used as a means to use cryptocurrencies as betting currency