个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Live: https://wortzi.fizzamubeen.com · Version: 1.12.0 · Changelog
Learn everyday German from Urdu, Hindi or English. Picture flashcards, your own word lists, daily practice that adapts to you, and printable PDFs of everything you learn. Private by design: no account, no tracking, all data stays on the learner's phone.
Built for people who just moved to Germany and need German for real life: the bakery, the U-Bahn, the Bürgeramt, the doctor and work.
| Your mother tongue is the bridge | Every card and lesson is in Urdu (Nastaliq), Hindi (Devanagari), Roman script and English. The grammar guide shows where Urdu and Hindi already work like German: verbs at the end after weil and dass, mujhe = mir. |
| Two personal lists | ☆ I want to learn and ✓ I learned. Tap ☆ or ✓ on any word, add your own words and sentences, and watch words move from one list to the other as you master them. |
| Your own words become flashcards | A sentence for your job interview or your street name is practised exactly like the built-in cards. |
| Learning on paper | One tap makes a PDF: a progress report for your teacher, a personal word book, cut-out flashcards with pictures (fold or double-sided), or a full A1/A2 course book with your status next to every word. |
| Private and safe | Nothing leaves the device. No sign-up, cookies, analytics or outside fonts. Backups can be encrypted with a password (AES-256). |
| Daily-life method | Spaced repetition (1, 2, 4, 7, 15, 30 days), a 10-minute daily plan, active recall, listen-and-repeat, and sentences before grammar. See Guide → How to learn German for daily life. |
wortzi, and upload all files from this folder (keep the folder structure, including .github/).main (or run the workflow from the Actions tab). The workflow downloads the fonts and publishes the site.https://FizzaMubeen.github.io/wortzi/.Every push to main updates the site automatically.
bash scripts/build-wp-plugin.sh → dist/wortzi-wp.zip, or[wortzi]
Options: [wortzi height="900" link="no"]. Works in the block editor and in Elementor's Shortcode widget.The app runs inside an iframe, so your theme's CSS cannot break it and it cannot affect your theme. It stores nothing on your server.
Upload the folder to any HTTPS web space (e.g. yoursite.com/german/). Run bash scripts/get-fonts.sh once first so the fonts are included.
python3 scripts/build-standalone.py → dist/wortzi-standalone.html. Open it with a double-click or send it to someone. (No offline install or encrypted backup from a local file; everything else works.)
Opening
index.htmldirectly from your computer does not work, because browsers block loadingdata/deck.txtfrom disk. Use one of the options above, or for testing runpython3 -m http.serverin this folder and openhttp://localhost:8000.
data/deck.txt## food|A1|🍽️|Food & drink
🍞|روٹی|roti|रोटी|the bread|das Brot
## id|level|emoji|title starts a unit. Units appear in the order of the file.picture|Urdu|Roman|Hindi|English|Germander/die/das get their gender color automatically.id or the German text of an existing card: progress is linked to them. Fixing Urdu, Hindi or English is always safe.B1 as the level; it gets its own section.data/guide.htmlEach lesson is a <section data-id="…" data-title="…" data-level="A1" data-sum="…">. Copy an existing one and change the text.
Raise VERSION at the top of sw.js (e.g. wortzi-1.4.1) so phones that installed the app download the new files. On GitHub Pages, just commit and push.
localStorage on the learner's device.unsafe-eval only because the offline listening engine compiles itself in the browser.)scripts/get-stt.sh) runs entirely on the phone. The German model is downloaded from this site once, when the learner asks.audio/, made by the Make audio workflow). The device's own voice is a fallback. Nothing is sent to any speech service when listening.Because nothing is collected, no cookie banner is needed for the app itself. (If you embed it on WordPress, your site's own cookies and analytics still apply to the surrounding page.)
index.html app shell
assets/css/app.css all styles (mobile-first, print styles for PDFs)
assets/css/fonts.css self-hosted fonts (SIL Open Font License)
assets/js/app.js the app (plain JavaScript, no build step)
assets/fonts/ filled by scripts/get-fonts.sh
assets/icons/ app icons
data/deck.txt all flashcards
data/guide.html grammar lessons
audio/ recorded German audio (made automatically, do not edit)
sw.js offline support
manifest.webmanifest install as app
wordpress-plugin/ WordPress shortcode plugin
scripts/ fonts, WordPress zip, single-file build
.github/workflows/ automatic deploy to GitHub Pages
© 2026 Fizza Mubeen. All rights reserved. Wortzi is proprietary: the code, the learning content, the audio, the design, the name and the mascot. You may use the app at wortzi.fizzamubeen.com for your own learning, but you may not copy, modify, publish or reuse any part of it without written permission. See LICENSE.
Third-party parts keep their own licences: fonts (SIL Open Font License 1.1), offline listening (Vosk, Apache 2.0), voice (Piper "thorsten").