Review record RC-048 (Go, autonomous mode, not independent). Task: MIL-009#1 Task: MIL-009#2 Task: MIL-009#3 Task: MIL-009#4 Task: MIL-009#5 Task: MIL-009#6 Task: MIL-009#7 Task: MIL-009#8
2.3 KiB
2.3 KiB
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.