Educational calculator teaching FSMs (explicit transition table tokenizer)
and DAGs (recursive descent parser with AST evaluation). Includes CLI with
REPL, graphviz visualization, and 61 tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace inline __import__("datetime").timedelta hack with proper import
- Remove unused import random in anki_export.py
- Add error handling for Claude CLI subprocess failures in ai.py
- Fix hardcoded absolute path in stt.py with relative Path resolution
- Fix N+1 DB queries in vocab.get_flashcard_batch and dashboard.get_category_breakdown
by adding db.get_all_word_progress() batch query
- Wire Ollama model and Whisper size settings to actually update config
via ai.set_ollama_model() and stt.set_whisper_size()
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Vocabulary study with FSRS spaced repetition, AI tutoring (Ollama/Claude),
essay marking, idioms browser, Anki export, and dashboard. 918 vocabulary
entries across 39 categories. 41 tests passing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Extract duplicated code (Whisper loading, audio recording, transcription,
VAD processing) into reusable sttlib/ package. Rewrite all 3 scripts as
thin wrappers. Add 24 unit tests with mocked hardware. Fix GPU fallback
bug in assistant.py and args.system assignment bug.
New tool that uses webrtcvad for voice activity detection, faster-whisper
for transcription, and xdotool to type into any focused window. Supports
session-based listening, configurable silence threshold, and a "full stop"
magic word to auto-submit.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
We want to make CMake scale cleanly so that:
Adding a new tutorial folder is easy
Each executable is independent
each subproject would still require CMakeLists
clang-tidy is a static analysis tool:
It analyzes C++ source code
It finds bugs, bad practices, and design issues
It uses the same compiler flags as your real build
Examples of what it catches:
Uninitialized variables
Dangling references
Inefficient copies
Dangerous implicit conversions
Missing explicit
Poor modern C++ usage
clang-format is a code formatter, not a compiler tool.
It:
Rewrites your C++ source code
Adjusts indentation, spacing, line breaks, brace style, etc and makes
code look consistent