3 min read
Gameflix

Gameflix

Gameflix backend Service using Spring Boot with Kotlin

Description

Key Features

  • Login with Google using OpenID Connect
  • Connect Steam games using Oauth2.0
  • Connect Blizzard games using Oauth 2.0
  • Search and add games for your flavor

Documents

Getting Started

From live server

$ curl --location --request GET 'https://www.gameflix-backend.com/games?page=0&size=10'
  • Live server with UI is here

From source code

$ git clone https://github.com/OPGG-HACKTHON/gameflix.git
$ gradelw bootRun
$ curl --location --request GET 'http://localhost:8080'

From docker

$ docker pull ghcr.io/opgg-hackthon/gameflix:main
$ docker run --rm -p 8080:8080 ghcr.io/opgg-hackthon/gameflix:main
$ curl --location --request GET 'http://localhost:8080'

Overview

Design Principal

  • Always test every package, class in codes
    • This is validated by jacoco-gradle-plugin
  • Try to avoid including additional dependencies as much as possible
  • Try to maintain codes in domain package remain pure kotlin code
    • Except for necessary spring annotations like @RestController @Repository @Transactional

Diagrams

Domain - User

  • User is Google OpenID Connected User

Domain - Game

Infrastructure - IGDB

What can be done more

  • User rates games

Referenced