Skip to main content

TicTacToe - Product feature guide

ยท 3 min read

This one is an example of a software product/feature documentation that includes a write-up of available features, a short installation guide and a demo video for a product - a Tic Tac Toe CLI game that I built with a colleague for a code club at work. I used Gen AI to scaffold this doc and then heavily edited it.


Introโ€‹

TicTacToe start-up view screenshot TicTacToe gameplay screenshot

This is a Python implementation of the Tic Tac Toe game that includes classic game functionality and some experimental features.

What it can doโ€‹

Game modesโ€‹

  • Player vs Player: Play against another human player, using CLI input.
  • Player vs Computer: Challenge a (not very smart ๐Ÿฅน) AI opponent.
  • Computer vs Computer: Watch two AI players compete, with friendly UI that allows you to follow what's going on.

Custom stuffโ€‹

  • Board Size Selection: Choose from standard or custom board sizes: 3x3, 4x4, 5x5 or your own custom size.
  • Custom Tokens: Select unique tokens for each player.

Enhanced CLIโ€‹

  • Interactive Menus: Intuitive and user-friendly CLI for seamless navigation.
  • Dynamic Feedback: Real-time updates and prompts for player actions.
  • Clear Screen: Keeps the interface clean and focused during gameplay.

Smarter AI opponent experimentsโ€‹

ana/smart-computer branch includes the development of a smarter AI opponent using the Monte Carlo algorithm for the best move search. It's not quite made smart yet, the branch is still in development.

Replayabilityโ€‹

  • Replay Option: Easily restart the game after a match.
  • Persistent Settings: Retain board size and player preferences for consecutive games.

How to install and playโ€‹

  1. Clone the app directory, cd into it
   git clone git@github.com:chivoi/tictactoe.git
cd tictactoe
  1. If you have Docker installed, you can run the app inside the Docker image:
    # build the image
docker build . -t chivoi/tictactoe
# run the app
docker run -it chivoi/tictactoe
# Done ๐ŸŽ‰
  1. If you don't have Docker, do this:
    • Install Python as per Python docs
    • Install pip as per pip docs
    • Install dependencies:
        pip install --no-cache-dir -r requirements.txt
    • Run the main.py script to start the game:
      python3 tictactoe/main.py
  2. Follow the on-screen prompts to configure and play the game!

What it looks like: Demoโ€‹