Project

Tic-Tac-Toe Online

Challenging
16 completions
~ 21 hours
4.0

Learn the basics of the Kotlin language: variables, loops, and arrays. Gain skills in server-side development and working with databases by creating the backend for a simple online game.

Provided by

JetBrains Academy JetBrains Academy

About

Let's play a classic game of tic-tac-toe! But why stop there? Join us in creating the ultimate multiplayer version where you can host or join waiting rooms, customize the map size, and play against other users. We'll focus on developing the game's backend, and you'll have the opportunity to create the client portion to interact with the game server. Let's get started!

Graduate project icon

Graduate project

This project covers the core topics of the Introduction to Ktor course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Move the created game to the server. Instead of outputs to the console, make primary rest endpoints to get the game's current state and endpoints for making moves by the first and second player.
Add registration and authorization to your game and allow players to create rooms and play them with each other.
Make it possible when creating a room to make it private. For a private room, the system should generate an invitation link to join it. Store your data in the database so that when the server reboots, the rooms and users are not reset.
Add methods that allow users to see their game results history. Make the list of completed games paginable. Also, add pagination to the global room list.

Reviews

Eakawat Tantamjarik avatar
Eakawat Tantamjarik
12 months ago
Information outdate on how to implement H2 database connection, the provided link does not have anything related to H2 only Postgres. The dependency version of H2 and exposed also is not clear.

4.0

Learners who completed this project within the Introduction to Ktor course rated it as follows:
Usefulness
4.3
Fun
4.2
Clarity
3.5