Skip to content

vladimirshefer/ChessGrinder

Repository files navigation

Chess Grinder

App for chess club.

Backend Tech stack

  • Java 17
  • Spring 6
  • Spring Boot 3

Frontend Tech stack

  • React
  • React Query
  • Tailwind

Project tasks

  • EPIC: User profiles
    • DESCRIPTION: As a user, I would like to be able to login using username and password, then access and edit my user profile (username, name, password, email)
    • TECH: Reactive login (rerender components on login/logout)
  • EPIC: Tournament participant registration
    • DESCRIPTION: As a user, I would like to register on tournament by my own on the tournament page.
    • UI: Button "Participate in tournament"
  • EPIC: Tournament management
    • DESCRIPTION: As a user with admin role, I would like to create and manage tournaments.
      • Create tournament, specify the date and location (address) of the tournament according to the Swiss System
      • See the tournament overall results as well as intermediate round results.
        • The results are the table with the participant data such as:
          • Official name and last name
          • Unofficial temporary nickname (for fun)
          • Points (1 point for win, 0 points for loose and 0.5 points for a draw)
          • Buchholz coefficient (see Wiki)

Project setup for developers

  1. Install Java (17 is recommended)

  2. Install Node.JS 16.x and NPM 8.x

  3. (Optional) Install Docker.

    Docker enables setup of other parts with ease. It is required for these instructions.

  4. Run ChessGrinder Run configuration.