Commit graph

12 commits

Author SHA1 Message Date
pepaskopec-blip
c2a632c7d6 Move sources into src/ and runtime files into data/.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 17:00:57 +02:00
pepaskopec-blip
91a848b408 Add a self-updater that installs new releases.
Bake the release tag into the binary so the app knows what it is running;
plain builds keep the "dev" default and never offer an update. The CI
workflow already exported the tag on Linux and macOS, so only the Windows
job needed it.

Read the newest version from the redirect GitHub serves for
/releases/latest, which avoids the REST API and its unauthenticated rate
limit and needs no JSON parser. Networking goes through the curl command
rather than a linked library: curl handles TLS, redirects and proxies, it
ships on all three platforms, and it keeps the bundling scripts free of
another shared library.

An application cannot reliably replace its own files while running, so
every platform follows one shape: unpack beside the current install,
write a script that waits for this process to exit before swapping, then
launch it detached and quit. Staging beside the install keeps the move on
one filesystem and fails early when the location is read-only. The
Windows script copies without mirroring so the progress files kept inside
the install directory survive.

Check quietly a few seconds after startup and offer the result in a
banner above the pages, with a manual check in the settings popover.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 15:04:55 +02:00
pepaskopec-blip
ae56a1c1da Rework the interface into a consistent visual system.
Replace the accumulated per-widget decoration with short, documented
scales for type, weight, radius and motion. Fills are flat and elevation
is neutral, so accent colour marks state instead of decorating: the
gradients on buttons, pills, nodes and progress bars are gone, along with
the coloured glow shadows and the triple ring on the current unit.

Drop draw_node_halo() and the gradient aura on the learning path, which
painted the same bloom in the cairo layer.

Give the welcome page the app icon, a single-colour heading and an
unboxed paragraph. Restore keyboard focus rings, which were suppressed
everywhere, and clamp exercise bodies to a readable measure on wide
windows.

Fix two layout bugs found on the way: the statistics metric cards were
unequal because hexpand only shares leftover space, and a fraction of
zero still painted a stub of accent colour because GTK gives the progress
node a minimum width.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 14:17:34 +02:00
0bfd7db42a 1984 - George Orwille - Czech Maturita Readings 2026-09-14 15:35:41 +02:00
pepaskopec-blip
1e9c9b5f84 Improve multiple-choice quiz layout with cards and clearer states.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 15:32:52 +02:00
cf84bffb36 prepared the czech subject 2026-09-14 12:44:24 +02:00
dvorakmortonxd
310049b22e UI tweaks again (made it so special symbols like stars arent affected since it makes it look weird on retina screens) 2026-09-11 22:11:25 +02:00
dvorakmortonxd
a57c4923fe made vocabulary exercise just a bit more tolerant 2026-09-11 22:08:45 +02:00
e0e44ce59b redesigned the vocabulary exercise in deutsch unit 1 2026-09-11 20:12:44 +02:00
pepaskopec-blip
3530d5e1d0 Fix dangling i18n subtitle keys and progress-bar CSS warnings.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 19:00:31 +02:00
2782446b89 new exercise in unit 1, vocabulary training 2026-09-11 14:15:58 +02:00
4cc68e3e46 moved the css to an external file 2026-09-11 09:59:12 +02:00