Commit Graph

33 Commits

Author SHA1 Message Date
elpatron 1083dfdf2c Redesign PWA icons with bold crossed swords.
Thicker filled shapes read clearly on home screens and Android themed icons.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 11:12:07 +02:00
elpatron 562a229fa0 Add PWA manifest, service worker, and install hint.
Enables home-screen installation with per-viewer scope and platform-specific guidance in EN/DE.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 11:08:32 +02:00
elpatron 6df10e5498 Add favicon matching the crossed-swords brand icon.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 11:06:38 +02:00
elpatron dc42727f34 Move viewer export/import into a dedicated Backup tab.
Keeps game save import in the sidebar while grouping viewer database
backup actions with their explanation in the main navigation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 10:03:04 +02:00
elpatron 3314de829d Use real timestamps on history chart x-axes.
Plot snapshots by export or import time instead of category indices so
coins, level, skill, and inventory trends reflect actual elapsed time.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 09:43:31 +02:00
elpatron b6cc0f6984 Fix vertical spacing in the viewer backup sidebar section.
Use flex gap so export and import buttons no longer sit flush against each other.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 23:08:21 +02:00
elpatron 7656578b72 Add viewer database import and clarify backup actions.
Pairs export with validated .db restore, documents the difference from game
save imports, and renames the JSON upload button to Import game backup.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 23:06:59 +02:00
elpatron defc98dec2 Document goals, search, export, and extended API in README.
Keeps the README aligned with the new viewer features so setup and API
usage stay discoverable without reading the source.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:59:12 +02:00
elpatron 64820cefc1 Add relative/skill goals, import diffs, and history tooling.
Extends the goals system and viewer UX so players can track item and skill
targets with groups, ETAs, global search, snapshot management, and DB export.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:59:01 +02:00
elpatron 4e3fa590c8 Fix empty goal groups not appearing in the Goals tab.
Include goal groups without items in the structured goals API so newly created groups show up immediately.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:36:15 +02:00
elpatron 45473ced2b Track Plausible analytics events for the goals feature.
Log goal creation, group management, tab usage, deletions, and goals reached on import to measure feature adoption and completion.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:30:00 +02:00
elpatron f5b5541555 Add grouped inventory goals with import completion notifications.
Players can create named goal groups, set absolute item targets from inventory, track progress in a new Goals tab, and get banners when uploads complete goals or entire groups.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:25:42 +02:00
elpatron 82b47f9df1 Create a persistent personal viewer on local CLI start.
Replace the fixed /v/local/ default with a reused secret viewer id so local runs get a bookmarkable personal URL like production.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 22:09:37 +02:00
elpatron 406e165d0f Add .gitea-credentials.txt to .gitignore to prevent credential exposure. 2026-06-19 21:43:00 +02:00
elpatron 70079d17b8 Wait for Docker Compose health status during deploy instead of curl.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:46:00 +02:00
elpatron e64e67947c Add Docker Compose health check for the viewer service.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:44:15 +02:00
elpatron c1775e1857 Remove PowerShell deploy script and mark deploy.sh as executable.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:42:47 +02:00
elpatron be70809bf0 Fix Windows deploy by copying remote script via scp instead of piping.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:30:40 +02:00
elpatron 766fc7f6ef Fix deploy remote script CRLF issues on Windows PowerShell.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:25:36 +02:00
elpatron fcb09483a5 Update deployment script variable naming for clarity and consistency. 2026-06-19 17:23:37 +02:00
elpatron b4dd0983b1 Fix Windows deploy to use native OpenSSH instead of Git Bash.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:21:54 +02:00
elpatron 6be50147d2 Refactor deployment script to use repo-relative path for bash execution and streamline environment variable handling for deployment settings. 2026-06-19 17:18:58 +02:00
elpatron 7f7da149ab Add deployment scripts for git push and remote Docker rollout.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:16:51 +02:00
elpatron 6c65732eb1 Add per-item inventory sparklines with expandable history charts.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:08:40 +02:00
elpatron 810ad67ab6 Add Plausible analytics with JSON Upload custom event.
Load tagged-events from plausible.elpatron.me on all pages, allow it in CSP, and track successful save uploads with import status.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:58:58 +02:00
elpatron 5c87df1e5e Publish port 5000 for external nginx Proxy Manager upstreams.
Map the container to the host so NPM can reach http://<host>:5000 and document the docker-network alternative in the README.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:52:46 +02:00
elpatron e79fe34643 Fix viewer API routing under Content-Security-Policy.
Pass the viewer id via a body data attribute instead of a blocked inline script so personal links still load saved data after restart.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:33:59 +02:00
elpatron fdeaf04280 Add site footer and fix proxy-aware viewer URLs.
Build public links from host_url netloc behind reverse proxies so generated viewer URLs do not include the internal upstream port.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:27:20 +02:00
elpatron 58b9e0bb0a Harden app for production behind nginx Proxy Manager.
Remove path-based import, add rate limits and upload caps, security headers, proxy trust, bundled Chart.js, non-root Docker, and NPM deployment docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:23:27 +02:00
elpatron f2c564e69a Translate README to English and fix DATA_DIR resolution.
Read get_data_dir from the environment on each request so CLI and server always use the same viewer database path.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:16:24 +02:00
elpatron f51f166fa1 Add Docker deployment and per-player secret-link viewers.
Each player gets an isolated SQLite viewer via a unique URL without login, with landing page warnings to save the link and compose-based hosting for sharing with others.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:06:13 +02:00
elpatron fbc2deec45 Add i18n, save validation, and tolerant import handling.
Prepare the UI for English (default/fallback) and German with auto or manual locale selection, and report import issues with client-translated warnings instead of failing on minor save format changes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 15:59:57 +02:00
elpatron 4b8b921e02 Add Idle Fantasy save viewer with local Flask dashboard and SQLite history tracking.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 15:41:58 +02:00