nikola@novi-sad: ~/portfoliosr|en

nikola@novi-sad:~$ cat projects/iks-oks.md

projects/iks-oks.md

← projects/

# Košarkaški iks-oks

> Tic-tac-toe with EuroLeague players.

The board is 3×3 and every square has two criteria (club, nationality, position, title, era). To take a square you type in a player who meets both. You play with a friend through a link or on one device, with a timer and rematches. There is also a daily board, the same for everyone, that you solve on your own. I made the promo video in Remotion, and the match and colours in it come from the app itself.

## Rules

The player whose turn it is picks a square and types in a player. A correct answer gives the square an X or an O, and a wrong one costs the turn and leaves the square empty. The same player cannot be used twice in one match. Three in a row wins. The timer is 15, 30 or 60 seconds per move, or you can play without one.

## Player search

Suggestions show up after two or three letters. Search works without diacritics, with typos and in Cyrillic, and shows the year of birth next to the name. The database has players from the 2000/01 season until today.

## Tech

The app is written in Expo (React Native Web) and works as a PWA. Rooms, matches and accounts live in Supabase: every visitor gets a guest session, and anyone who wants to can sign in with Google. A separate Python script imports the player data. The site is hosted on Cloudflare Pages.

stack: Expo React Native Web TypeScript Supabase Cloudflare Pages Remotion

kind: Web game, PWA, 2026

status: prototype · v0.19.0

link: kosarkaski-iks-oks.pages.dev // Play

// Promo video, 24 seconds, no sound.
A frame from the promo video: a square with the criteria Serbia and EuroLeague champion, a timer and a correct answer
// A frame from the promo video: a correct answer before time runs out.
A frame from the promo video: a link for a friend, the team table and players from 2000/01 until today
// A frame from the promo video: playing with friends.