28186c774552642fbac344872b48c8396e62ffc0
Check, format and test / build (push) Successful in 10m0s
Adds the screen after onboarding: pick a month/year (ConfirmMonth), show loading screens while the device is queried, then download that month's records and resolve each distinct employee's name, printing both to stdout (debug pretty-print) before landing on the placeholder "done" screen. - r701: RecordIterator's boxed stream is now Send, required for it to cross into a Tauri command's future. - oxibadge: load_records/load_employees commands, sharing the existing 3-retry connect_with_retries helper. load_records uses skip_while/ take_while on the device's newest-first stream to grab only the target month without walking its whole history, then a single collect + in-place Vec::reverse() back to chronological order. - Shared LoadingScreen/Intro components extracted so future screens reuse the same look without duplicating markup/CSS. Assisted-by: Claude Sonnet 5 <noreply@anthropic.com>
A reverse-engineered client for the R701 attendance reader by I.P.S. Informatica
This repository is a Cargo workspace with two members:
r701/— the async Rust library that speaks the device's TCP protocol.oxibadge/— Oxibadge, a minimal Tauri + Svelte desktop client built on top of the library.
If you want to read about the reverse engineering attempt behind the library, check out https://nicolabelluti.me/series/attendance-reader/.
Languages
Rust
100%