nicolabelluti 28186c7745
Check, format and test / build (push) Successful in 10m0s
feat(oxibadge): add month-confirmation flow and fetch records/employees
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>
2026-10-07 12:47:36 +02:00
2024-05-05 16:45:55 +02:00
2024-05-05 16:36:41 +02:00
2026-10-06 20:31:24 +02:00

R701 | Oxibadge

Rust Claude Code GNU AGPLv3.0 License Buymeacoffee
CI Badge


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/.

S
Description
No description provided
Readme AGPL-3.0
564 KiB
Languages
Rust 100%