Add the logo and screenshots, restructure into features, installation,
usage, configuration and development, and bring everything up to date
(background mode, installers, menus, limitations). The project
description now covers Linux and Windows.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Command-zone objects such as boons have small grpIds that aren't cards.
Name them from the log's name id (e.g. "The Ring") or the card that
created them ("Swiftspear's Teachings (boon)"), and preview the source
card on hover.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- install.sh: checks Python 3.12+, installs the app into its own
environment, checks Qt's system libraries, installs icons and a
--background .desktop launcher, offers start at login; --uninstall.
- install.bat / install_windows.ps1: checks Python (offering winget),
builds with PyInstaller, installs to LOCALAPPDATA with Start Menu and
Desktop shortcuts, offers start at login; -Uninstall.
- .gitattributes keeps .bat/.ps1 as CRLF and .sh as LF.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The icon now comes from images/mtga-assistant-icon.png: make_icon.py
copies it into the package (window, taskbar and tray icon) and builds
the Windows .ico used for the .exe. The old generated SVG icon is gone.
The PyInstaller spec also keeps QtNetwork, needed for single-instance.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Closing the window hides it to the system tray; tracking and history
recording continue. Quit from the tray, the menu or Ctrl+Q.
- Show the window when MTGA starts a new Player.log, detected with OS
file notifications on the log folder (QFileSystemWatcher), not polling.
- Single instance over a local socket: launching again shows the
running window (or stays hidden with --background).
- Menu options for background mode, show-on-launch and start at login
(XDG autostart on Linux, HKCU Run key on Windows); --background flag.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Customize menu: a "Sections" group to show/hide each Match panel
(You, Match, Opponent, Turn stats, My deck, Preview, Opponent's
cards); rows collapse when all their panels are hidden. Player panel
details follow, then Arrange. The submenus duplicating Arrange are gone.
- The top bar's match summary only shows on the Match tab.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- paths: per-platform detection behind an injectable Env. Windows finds
Player.log in the user profile and the install via Steam (registry),
the standalone installer, Epic, or the uninstall registry. App dirs
come from platformdirs (unchanged XDG locations on Linux).
- logtail: open Player.log only while reading, so Windows can still
rotate it when MTGA restarts.
- carddb: on Windows read a private copy of the card database so MTGA's
updater can replace the original.
- App icon (SVG source + generated ICO/PNG), Windows taskbar identity,
and a Windows-safe timer glyph.
- PyInstaller spec, launcher and PowerShell build script producing a
one-folder windowed build and zip.
- Tests for path detection, the log follower and the card-DB copy;
README covers Windows usage, building and per-OS locations.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Replace the "Selected turn" and "Whole game" tables (each with You,
Opponent and Total columns) with one table per player: yours on the
left (stat, turn, game) and the opponent's on the right, mirrored
(game, turn, stat), so whole-game numbers sit next to the turn picker.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Match page now holds players/match info, turn stats with a turn
picker, and the deck lists (My deck · Preview · Opponent); the Deck
and Turn tabs are gone. Section heights are draggable and remembered.
- History: sortable, resizable columns; deck and commander columns;
right-click to show only or hide games with a value, with filter
chips; stats tiles (win rate overall, last 10/100, last 7 days,
play/draw, average length and turns) that follow the filters.
Commanders are backfilled for games recorded before they were stored.
- Deck panel shows copies per zone against the deck total (e.g. 2/5).
- Preview can be cleared with ✕, a click on the image, or Esc.
- Customize menu stays open while toggling; Arrange covers deck
sections and turn stats together.
- Fix squeezed nav buttons and the header pushing controls off-screen.
- Fix known opponent cards being double-counted when also revealed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Top bar switching between Deck, Match, Turn and History views
- Match view: life, player counters, commanders, emblems, zone counts,
turn timer and timeouts, land drops used/allowed, play/draw and Bo3
draw counts, with the deck view below
- Turn view: per-player and total stats per turn with history, plus
whole-game totals and land drops
- History: every finished game (colours, winner, who was on the play);
click to reopen it in the other views; imports Player-prev.log
- Customize menu to show/hide items and an Arrange dialog to reorder
deck sections and turn stats, remembered across sessions
- Static dark theme with mint accent, rounded corners, larger text
- Commanders tracked separately from emblems, with location and tax
- Quieter, non-sticky warning for cards lost to MTGA log gaps
- Correct Scryfall images for tokens
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PySide6 app that follows MTG Arena's Player.log under Steam/Proton and shows
my remaining library with draw odds, my zones, and everything revealed about
the opponent (board, graveyard, exile, known hand/library, seen this match).
- Auto-detects the Steam library, Proton prefix log and MTGA install
- Card names/costs/types from MTGA's local SQLite card database
- Tracks card identity across zone changes, shuffles and Bo3 games
- Scryfall card images with a lazy, size-capped LRU disk cache
- Live log following with restart detection, plus --replay mode
- Flags log gaps where MTGA omits oversized game-state messages
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>