iterminate
5a7bbd46ab
Add size, chemistry, capacity, purchase date to bulk add form
...
Shared metadata fields settable at creation time apply to all
batteries in the batch, avoiding per-battery detail page visits.
2026-04-12 15:15:07 -05:00
iterminate
604d7bb699
Add optional battery metadata fields
...
New nullable columns on Battery: size, chemistry, capacity_mah,
tested_capacity_mah, tested_date, charge_cycles, purchase_date.
Battery detail page shows all populated fields and a full edit form
with select dropdowns for size and chemistry (with Other fallback).
Capacity health % shown in green/orange/red when both nominal and
tested capacity are set. Dashboard gains a Size column.
2026-04-12 14:57:22 -05:00
iterminate
47e1059532
Replace datalist autocomplete with select dropdown for brand fields
...
datalist only shows suggestions when typing, not on click. Switched to
a <select> showing all known brands plus a 'New brand...' option that
reveals a text input for entering a new brand name.
2026-04-12 14:20:03 -05:00
iterminate
709e0d6119
Add brand autocomplete dropdown to battery add and device install forms
...
Uses HTML datalist populated from distinct brands in the battery table.
Removed autocomplete="off" which suppresses datalist in Chrome/Chromium.
2026-04-12 13:31:19 -05:00
iterminate
1f5234a3e9
Simplify battery management: bulk add, device-level auto-install, mass operations
...
- Replace single-battery add form with bulk add (brand + count, auto-generated labels)
- Add device-level install form: specify brand+qty pairs, system autoselects available batteries
- Add bulk actions on dashboard: retire, delete, unassign, change brand (checkbox multi-select)
- Keep per-battery assign route for special cases (e.g. known low-capacity battery)
- Remove unique constraint on Battery.label (labels are now auto-generated)
- Add *.snapshot to .gitignore for DB snapshot files
- Rewrite tests: 35 passing (11 new tests for bulk-add, device-install, bulk-actions)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-12 12:57:10 -05:00
iterminate
2e36d5f53c
Add CLAUDE.md with architecture and dev commands
2026-04-12 07:18:34 -05:00
iterminate
6ea3eae981
Initial commit: Flask battery tracker app
...
- Flask + SQLAlchemy (MariaDB-compatible schema) battery tracking web app
- 40 pre-seeded batteries (Eneloop, BONAI, Energizer NiMH) across 5 devices
- Business rules: block retired assignment, brand-mix warnings, capacity checks
- Mobile-friendly Jinja2 templates with inline CSS
- waitress WSGI server via systemd user service (sbin/install-service.sh)
- SQLite → MariaDB migration script (migrate_to_mariadb.py)
- 26 passing acceptance tests (pytest + Flask test client)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-11 22:38:16 -05:00