Commit graph

44 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
737e27deb0 Publish builds to a branch instead of to releases.
Releases and version numbers are gone. CI now rebuilds all three platforms
on every change to main and commits the packages to the `builds` branch,
so what anyone downloads is the current state of the repository. The
branch is rewritten from scratch each time rather than added to, so the
repository keeps one copy of the packages instead of a ~70 MB set per
commit.

Without tags there is no version to compare, so a build carries the
commit it was made from and the branch carries a VERSION file naming the
same commit. The updater fetches those few bytes and treats any
difference as being behind; commits are not ordered, and the branch only
ever holds the current build.

The installers fetch from the branch over raw.githubusercontent.com for
the same reason.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 15:40:47 +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
acc0ec9590 Fix ALS abbreviation to ALU in hardware lessons 2026-09-15 12:55:10 +02:00
77e91531ea Literatura - Ladislav Fuks - Spalovac Mrtvol - Maturitni cetba 2026-09-14 15:58:47 +02:00
0bfd7db42a 1984 - George Orwille - Czech Maturita Readings 2026-09-14 15:35:41 +02:00
pepaskopec-blip
1dc8ddea07 Add year picker for computer networks path (years 1–4).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:27:29 +02:00
pepaskopec-blip
6848b22b93 Add network unit 27 on wireless networks and Wi-Fi security.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:16:00 +02:00
pepaskopec-blip
ac3c0849b7 Add network unit 26 on application protocols and ports.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:12:51 +02:00
pepaskopec-blip
d5219f5f8d Add network unit 25 on TCP and UDP transport protocols.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:09:29 +02:00
pepaskopec-blip
0897f5f194 Add network unit 24 on ARP and RARP address resolution.
Cover IP/MAC conversion, broadcast queries, replies and ARP cache.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:06:33 +02:00
pepaskopec-blip
cdcfe2237d Add network unit 23 on ICMP messages and traceroute.
Cover error reporting, ping echo and the TTL-based traceroute method.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 13:03:46 +02:00
pepaskopec-blip
f1fb4f7af0 Add network unit 22 on IP packets and headers.
Cover datagram structure, key header fields, protocol numbers and fragmentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:58:32 +02:00
pepaskopec-blip
5522a77533 Add network unit 21 on Ethernet addresses and frames.
Cover MAC assignment plus Ethernet II, 802.3, SNAP, raw frames and sizes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:54:48 +02:00
pepaskopec-blip
de2fc2cd36 Add network unit 20 on routers and gateways.
Cover router roles, firewalls, multiprotocol conversion and gateway use cases.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:50:06 +02:00
pepaskopec-blip
0f211e3185 Add network unit 19 on routing principles and algorithms.
Cover adaptive vs static routing, control types, metrics and distance vector.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:46:44 +02:00
cf84bffb36 prepared the czech subject 2026-09-14 12:44:24 +02:00
pepaskopec-blip
07631f7837 Add network unit 18 on switch forwarding in detail.
Cover CAM learning plus cut-through, store-and-forward and fragment-free modes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:39:49 +02:00
pepaskopec-blip
247d3af8af Add network unit 17 on active network devices.
Cover repeater, transceiver, hub, switch, router and gateway with a quiz.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:24:22 +02:00
pepaskopec-blip
a14110e642 Add network unit 16 on medium access methods.
Cover collisions, Aloha, CSMA/CD and CSMA/CA with slides and a quiz.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:21:51 +02:00
pepaskopec-blip
337c41fa62 Add network unit 15 on fiber protection and installation.
Cover primary/secondary coatings and cleave/splice mounting with a quiz.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:19:18 +02:00
pepaskopec-blip
a6f359376c Add network unit 14 on fiber optics basics.
Cover light conversion, pros/cons, and multimode vs single-mode fiber with a quiz.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:15:18 +02:00
pepaskopec-blip
46688f76d1 Add network unit 13 on bus, star and ring topologies.
Unlock slides and a quiz covering shared-medium, hub/switch and ring layouts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:12:56 +02:00
pepaskopec-blip
f538da1c3f Add network unit 12 on TCP/IP architecture basics.
Cover OSI mapping, model origin, and key protocols per layer with slides and a quiz.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:10:28 +02:00
pepaskopec-blip
2a83b18cdf Add network unit 11 on the seven ISO/OSI layers.
Unlock slides and a quiz covering each OSI layer so the networks path continues past the ISO/OSI vs TCP/IP overview.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 12:08:09 +02:00
dvorakmortonxd
a57c4923fe made vocabulary exercise just a bit more tolerant 2026-09-11 22:08:45 +02:00
pepaskopec-blip
d0aa9640bc Add Technické vybavení unit 3: bits and bytes with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 21:03:51 +02:00
pepaskopec-blip
0091bfa09f Add Technické vybavení unit 2: computer history generations with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 20:55:00 +02:00
pepaskopec-blip
47831c512b Add Technické vybavení unit 1: von Neumann architecture with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 20:48:48 +02:00
e0e44ce59b redesigned the vocabulary exercise in deutsch unit 1 2026-09-11 20:12:44 +02:00
pepaskopec-blip
fb21e127ac Remove outdated Deutsch-only subtitle from subjects screen.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:48:14 +02:00
pepaskopec-blip
02c994fb5e Refactor networks quizzes, progress tracking, and page wiring.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:34:06 +02:00
pepaskopec-blip
2e6d1d9457 Add networks unit 10: ISO/OSI and TCP/IP models with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:11:41 +02:00
pepaskopec-blip
ec3b17f43f Add networks unit 9: layered models and protocols with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:10:11 +02:00
pepaskopec-blip
a2f810c7e8 Add networks unit 8: circuit and packet switching with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:07:40 +02:00
pepaskopec-blip
a9c36a30ac Add networks unit 7: multiplexing and duplex modes with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:06:11 +02:00
pepaskopec-blip
454cb9d40c Add networks unit 6: path, channel and circuit with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:04:36 +02:00
pepaskopec-blip
8ac39d180b Add networks unit 5: signals and modulation with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:02:48 +02:00
pepaskopec-blip
40f921e09e Add networks unit 4: data transmission and security quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:00:52 +02:00
pepaskopec-blip
564af1674a Add networks unit 3: client–server and cloud with quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 17:57:24 +02:00
pepaskopec-blip
f3347e7dc3 Add networks unit 2: basic concepts slides and MCQ quiz.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 17:53:32 +02:00
2782446b89 new exercise in unit 1, vocabulary training 2026-09-11 14:15:58 +02:00
56fe5ae6fc Split the UI code into multiple files 2026-09-11 11:42:13 +02:00