summaryrefslogtreecommitdiff
path: root/ui/src/commonMain/kotlin
Commit message (Collapse)AuthorAgeFiles
* Plain UI copy; smart cube pairing; stackmat inputElizabeth Alexander Hunt8 hours7
| | | | | | | | | | | | | | | | | - Remove marquee, snow, pointer-following, hostname line and penguin speech; the penguin keeps to its corner. UI text is plain labels. - Smart cube: scan / pair / connect / forget in settings, with live battery, move count and an unfolded view of the cube's state, and "mark solved" to resync. Paired cubes go in the synced device list. CubeBackend abstracts the platform; Linux (BlueZ) only for now. - Stackmat: audio decoder for the timer's 1200-baud data port (edge based, so AC coupling and inverted inputs work; 5- and 6-digit packets, checksum verified) and a session that records each solve once. Settings pick the input and show signal state; when enabled the mat drives the timer display and lamps instead of the keyboard. Tested against synthetic audio only. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
* Remove marquee, snow and pointer-following; penguin stays putElizabeth Alexander Hunt9 hours4
|
* Redesign as a liz.coffee document; type-to-steer memo; image searchElizabeth Alexander Hunt9 hours13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Look: drop the Win98 chrome for the site's own style: black page, serif text, sage links in [brackets], bordered tables, pink accent, Koch snow, a marquee of colony news, an 88x31 blinkie. A paper theme for daylight. Pixel fonts removed. Timer: drawn seven-segment LCD in a timer body with hands-down/ready lamps, sized to the space it has. Touch starts the timer only on touch devices. Big display mode (F). Pips at 8 and 12 s of inspection. Penguin: follows the pointer as on the site, pecks and sleeps when idle, watches during solves, says a word afterwards. Sprite sizes are now in dp (was raw pixels, hence tiny on hidpi). BLD: - Fix: BLD scrambles end in wide moves; hold the cube by its centres so tracing and checking use the solver's real frame. - Memo trainer: typing a target turns the view to that sticker (eight fixed corner views, animated); arrows step through the memo without showing letters; optional pause for execution; recall pass; results separate tracing slips from memory slips (Tracer.firstMistake). - Password fields show the last typed letter briefly. - Pair cards show where the pair sits on the cube. Sticker drill uses the unfolded cube for "where is it". - Letter pairs live under BLD; BLD setup lives in settings. - Reviews reload when the store changes (other devices' practice). Pictures: Brave image search in the pair editor; chosen images are shrunk to WebP and synced. Key read from the local, unsynced config. Dev: `--shots <dir>` renders every screen offscreen with sample data. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
* BLD trainers: OP tracing/checking, FSRS drilling, BLD tabElizabeth Alexander Hunt20 hours6
| | | | | | | | | | | | | | | | | | | | | - bld: 3x3 sticker geometry in Speffz order, lettering schemes, the solver's frame (default yellow top / orange front), OP tracing with cycle breaks and twists, and memo checking by executing the typed targets as OP swaps, so any valid memo passes and errors are reported as the pieces left wrong. - srs: FSRS-4.5 memory model and a weighted drill picker that favours forgotten, hard and recently missed items. Reviews are stored one entity per answer so concurrent devices merge cleanly; Letter Pair Gym history seeds pair difficulty. - BLD tab: pair->word (three at a time), word->pair typing, target drills (name the outlined sticker / find a letter's sticker on a scrambled 3D cube), memo trainer on official 3BLD scrambles with hidden recall fields, and a setup page with orientation, buffers and a click-to-edit lettering net. - PuzzleView: tap-to-pick stickers, highlight outline, face cameras. - CubeMapping between renderer stickers and NxN slots. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Rookery: penguin-themed cubing toolkit, phases 0-1 and GAN BLEElizabeth Alexander Hunt21 hours9
Kotlin Multiplatform + Compose desktop app. - Sync: per-device append-only op logs (HLC-stamped LWW) in a plain folder, safe under Syncthing/Drive; content-addressed image blobs. - Timer: WCA inspection, +2/DNF, solve table, WCA-correct aoN/moN, per-event lifetime PBs with a pixel-penguin party and synthesized 8-bit chime. Mascot sprite from liz.coffee. - Scrambles for all WCA events + FTO via tnoodle-lib, with previews. - Importers: csTimer exports (incl. smart-cube reconstructions and cube MACs) and the Letter Pair Gym prototype (words, notes, images, history, practice stats). Idempotent; headless `--import`. - Letter-pair grid with miss heatmap, glance lookup and editor. - 3D puzzle engine (polyhedron + cut planes) and Canvas renderer: NxN 2-7, Pyraminx, Skewb, verified sticker-for-sticker against tnoodle; 3D replay of smart-cube solves. - GAN Gen2/3/4 smart-cube protocol (ported from gan-web-bluetooth, MIT) with a BlueZ D-Bus transport and `--cube scan|monitor` CLI. Not yet tested against hardware. - lizCI pipeline (.ci) building a test+package Docker target. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>