Clone
2
Install
Jens Tirsvad Nielsen edited this page 2026-10-15 00:33:00 +08:00
Install
🌐 English · Dansk · Bahasa Malaysia
Requirements
- Python 3.13 or later with Tkinter (on Debian or Ubuntu:
sudo apt install python3-tk). git.- Optional: an internet connection and the
speechextra to hear the Malay word.
Get the code
git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/031-flash-card.git
cd 031-flash-card
Create and use a local virtual environment
Windows (PowerShell):
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e ".[dev]"
Linux and macOS:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e ".[dev]"
.[dev]addspytest,ruff,mypyandimport-linter. Use.if you only want to run the program.- If PowerShell refuses to run
Activate.ps1, runSet-ExecutionPolicy -Scope CurrentUser RemoteSignedonce. - Leave the environment with
deactivate; delete the.venvfolder to start over.
Spoken Malay word (optional)
python -m pip install -e ".[speech]"
This installs gTTS and playsound==1.2.2. Without it the program works silently.
Run and test
python -m flash_card
python -m pytest
The window test in tests/e2e/ is skipped when no display is available.
Build an executable (Windows)
python -m pip install -e ".[build,speech]"
python tools/build_executable.py
The script uses PyInstaller and writes dist/flash-card.exe: one file, no console window, with the images, the word list and the spoken word inside. Double-click it to start; Python is not needed to run it.
- Your progress is kept in a
data/folder next to the executable (data/words_to_learn.csv). - A
data/ms-da.csvnext to the executable replaces the word list inside it. python tools/build_executable.py --no-speechleaves the speech packages out;--cleanrebuilds from scratch.- The executable is not committed to the repository. Build it on the system you want to run it on; Windows may show a SmartScreen warning because the file is not signed.
Documentation of the source code
doxygen Doxyfile
The HTML is written to docs/doxygen/html/index.html.
Flash Card
Languages
- English: Home · Install · Usage · Architecture
- Dansk: Hjem · Installation · Brug · Arkitektur
- Bahasa Malaysia: Utama · Pemasangan · Penggunaan · Seni bina