Skip to main content

CLI tool to convert Kahoot quiz reports into Anki flashcards

Project description

kahoot-to-anki

Python MIT License PyPI


kahoot-to-anki is a command-line tool that converts exported Kahoot quiz reports (.xlsx files) into Anki flashcard decks (.apkg format).
Designed for educators, students, and any self-learners to easily turn quiz results into effective spaced‑repetition decks.

Installation & Usage

Option 1: Install via pip

pip install kahoot-to-anki

Then run:

kahoot-to-anki --help

Example: Process all Kahoot Exports in the ./exports/ folder and write the flashcard deck and CSV file to ./data/:

kahoot-to-anki --inp "./exports" --out "./data" --csv

Option 2: Run with Docker

You can run kahoot-to-anki in a Docker container in three ways:

A) Build Image from Source Code (Clone Repo)

# Clone Repository
git clone https://github.com/SimonHRD/kahoot-to-anki.git

# Move into Repository
cd kahoot-to-anki

# Build docker image with the kahoot-to-anki tag
docker build -t kahoot-to-anki .

# Check help command
docker run --rm kahoot-to-anki --help

# Run with local data
docker run --rm -v "$(pwd)/data:/app/data" kahoot-to-anki \
  --inp "./data" --out "./data" --csv

On PowerShell:

docker run --rm -v ${PWD}\data:/app/data kahoot-to-anki \
  --inp "./data" --out "./data" --csv

B) Use a Minimal Dockerfile That Installs from PyPI

It is not needed to clone the repository, you can just create a minimal Dockerfile:

FROM python:3.13-slim

WORKDIR /app
RUN pip install kahoot-to-anki
ENTRYPOINT ["kahoot-to-anki"]

Then run:

# Build the image
docker build -t kahoot-to-anki-pypi .

# Run the tool
docker run --rm -v "$(pwd)/data:/app/data" kahoot-to-anki-pypi \
  --inp "./data" --out "./data" --csv

On PowerShell:

docker run --rm -v ${PWD}\data:/app/data kahoot-to-anki-pypi \
  --inp "./data" --out "./data" --csv

C) Run Without a Dockerfile (Install from PyPI at Runtime)

If you want to avoid writing a Dockerfile, just run the CLI directly from a fresh Python container. This method downloads everything at runtime in a temporary container. No files or installed packages will persist after the container exits.

docker run --rm -v "$(pwd)/data:/app/data" python:3.13-slim \
  sh -c "pip install kahoot-to-anki && kahoot-to-anki --out ./data --csv"

On PowerShell:

docker run --rm -v ${PWD}\data:/app/data python:3.13-slim `
  sh -c "pip install kahoot-to-anki && kahoot-to-anki --out ./data --csv"

CLI Arguments

You can provide either a single Kahoot Excel file or a directory containing multiple .xlsx files as input.
All valid Excel files in the directory will be processed.

Argument Description
-i, --inp Path to the input Excel file or directory (default: ./data)
-o, --out Path to the output directory for the Anki deck (default: ./)
--sheet The Excel Sheet with the raw Kahoot quiz data (default: RawReportData Data)
--csv, --no-csv Enable or disable CSV export of the questions (default: disabled)
-t, --title Title of the generated Anki deck (default: "Kahoot")
--version Show the version of the installed kahoot-to-anki package

Example

An example Kahoot export file is available in data/. The generated deck will be saved as anki.apkg in the specified --out directory (default: ./).

License

MIT — see LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kahoot_to_anki-1.2.1.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kahoot_to_anki-1.2.1-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file kahoot_to_anki-1.2.1.tar.gz.

File metadata

  • Download URL: kahoot_to_anki-1.2.1.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for kahoot_to_anki-1.2.1.tar.gz
Algorithm Hash digest
SHA256 ab2eac8a3c7e0354e6e10fb355fae85a154a084f1f5ee28ea19b3410b877fd3d
MD5 ca04ddc57b754c2ace522324f133620b
BLAKE2b-256 e29e71b857d0a61bfdaa3d35113c4b25fc6632262ec2172abd7179d93e378026

See more details on using hashes here.

File details

Details for the file kahoot_to_anki-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: kahoot_to_anki-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for kahoot_to_anki-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 30e014d74f09ec47135dcdaa453a0531d1017052be65fee9c31804911f3c918a
MD5 9c5000a6d321347fad2eee52f8cea82e
BLAKE2b-256 aa25eb8be14c231c23f11ddca4b97273bb7088fb01d756f1e0fc565691304562

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page