Your data
Privacy policy
Rift Ledger Companion · Browser extension
Match records, videos, and card notes stay in your browser. You decide what to export or share.
Match information
The companion reads match information displayed on https://play.riftatlas.com: room label, both player names and legends, points, turn number, visible player action-clock totals, initiative when visible, and result indicators. It records observation dates, duration and your review corrections locally using Chrome extension storage. Structured match capture does not read cookies, login tokens, hidden app state, chat messages or private opponent cards. It does not call RiftAtlas APIs or inspect game sockets.
Structured match capture runs automatically while the extension is enabled. There is no separate pause setting. Disable the extension in Chrome to stop it. The toolbar popup checks the active tab for the companion’s content script. Changing notice visibility sends a local message to open tabs; only the companion content script on RiftAtlas handles it. No tab URLs, browsing history, or other sites’ contents are collected. Recording badges and notices appear locally. Closing the notice saves a local display preference without pausing capture.
No analytics, advertising, accounts, remote code, cloud storage or telemetry are included. The optional card-image preview may load a public card image from RiftAtlas’s asset server as described below. Other companion features make no network requests. Clicking “Open RiftAtlas” opens the normal RiftAtlas website, governed by that site's privacy policy.
You choose when data leaves the extension. A QR/link or exported JSON contains player names, legends, your deck label, final scores, outcome, duration, initiative when known, dates, randomly generated record IDs, and your optional opponent-experience assessment for that match. It excludes room codes and connection credentials. Anyone you give the QR, link or file to can read those results and assessments.
Removing a match from the popup or history clears its matching unfinished review draft and excludes it from stats and exports. Undo or the Removed view restores the record. A local removed marker prevents the current board from creating it again. Saved videos and clips are kept separately. Removing a row is reversible in Removed. Removing the extension or explicitly clearing its extension data deletes its storage. Exports saved outside the browser remain until you delete those files. Uninstalling and reinstalling can assign new capture IDs, so reviewing overlapping games may be necessary.
The iPhone app saves imported results locally. Import is explicit, and existing matching records are preserved. The browser assessment is applied only when importing the sender's own seat. Phone-to-phone result sharing omits assessments; shared match replay preserves each phone's local assessment. Phone backups include them. See the application's backup controls to export your phone history.
Priority timing stores the two displayed RiftAtlas clock totals and whether they were captured at a result. JSON session exports include these values; compact QR/result links omit them.
Turn timing stores observed turn numbers, player seat indices, elapsed durations, and whether a turn was fully observed. JSON session exports include these durations. Compact browser QR/result links omit them. No extra browser permissions or network service are used.
Session recaps are calculated locally from saved results using your computer's local calendar dates. Optional session notes and tags are stored separately by date in extension storage. They are never included in result QR codes, links, or JSON exports and do not sync to the phone. Clearing extension storage or uninstalling deletes them.
Optional video recording
Recording quality is a local preference (720p, 1080p, 1440p or 4K / 2160p, at a selected target of 30 or 60 fps). New recordings default to 1080p; resolution and encoding bitrate metadata stay with the local footage. Changing quality does not grant new permissions or upload any data.
Video capture starts when you press Auto-record session in the popup, or click the toolbar icon on RiftAtlas after opting into One-click auto-record. The one-click preference and tab-audio choice are saved locally. Page loads, browser restarts and the preference itself never start recording; each new tab still needs your toolbar click. Further clicks during a session open controls without stopping capture. Chrome's optional tabCapture permission lets the extension capture the RiftAtlas tab you invoked it on. Auto-record keeps that capture connection open and saves separate videos when multiplayer games are observed. No footage is encoded or saved between games, although Chrome's capture indicator remains on and optional tab audio continues to play locally. An offscreen document owns the session so closing the popup does not stop it. The extension does not request webcam, desktop-capture, browsing-history or all-sites access. Microphone access is optional and requested only through the visible microphone setup page.
Microphone recording is off by default. Set up microphone → Allow microphone requests browser/system permission. Selecting Use this microphone saves that choice for future recordings. Device IDs and labels stay in local extension preferences and are not included in match exports. A recording with microphone enabled mixes that input with optional tab audio; it does not play the microphone through your speakers. Audio is stored only with the local video and included when you download/share that video. The setup page's five-second level test and input checks briefly access the chosen microphone but do not save audio. Test streams stop on completion or leaving the page. Auto-record keeps the microphone connected while waiting between games but does not encode/save during those gaps. Ending capture releases the microphone, and disconnecting it ends the recording. Saved clips reuse their source audio without opening an input.
A video contains everything visibly rendered in the recorded RiftAtlas tab, including your own hand, player names and any chat or other information visible there. It does not reveal hidden opponent cards. Video capture is distinct from the structured match reader above. A captured result finishes that game's video. Auto-record then waits for another game without requiring another click; manual mode ends capture. The session ends when you disable it, the recorded tab closes or leaves RiftAtlas, storage or encoding fails, a game reaches two hours, or the automatic session reaches eight hours. Auto-record retains the authorized tab connection across navigation and refreshes within RiftAtlas. Encoding pauses during navigation and resumes only after the arriving RiftAtlas content script reconnects; the session ends if it cannot reconnect within 30 seconds. A mid-game refresh saves separate before/after segments. No destination URLs or document tokens are persisted in recordings or reports. Manual recordings still stop on navigation. New tabs, browser restarts and extension reloads require enabling recording again.
Video chunks, observed turn/score/result markers, manual highlights, and saved clips stay in a separate local IndexedDB database. They are not uploaded, included in match QR links/JSON exports, or synced to a phone. The default combined limit is 500 MB; you can choose limits from 250 MB to 50 GB. Updates preserve your saved limit. The unlimitedStorage permission exempts extension storage, including IndexedDB, from Chrome's normal quota and eviction rules. It does not access other files, change your selected cap, reserve disk space or upload data. The selected cap still applies to recordings and clips together. Disk exhaustion can stop recording sooner. Recording settings checks the granted permission; only when it is absent does the local quota estimate produce a warning. That estimate and permission status may appear in your downloaded recording report and are never transmitted automatically. The extension never automatically deletes existing videos. Delete video permanently removes that video's footage and markers after confirmation, leaving match history and separately created clips intact. Uninstalling or clearing extension data removes local videos. Downloaded MP4/WebM files remain until you delete them and contain the visible/audio information from their recorded tab and any enabled microphone; choose deliberately before sharing one.
Open in full page opens a local extension tab that reads the same saved footage. Its URL contains only a local video identifier and playback position, not video bytes or player names. The page does not start tab capture or upload footage. Its links work only in the browser profile that holds those recordings.
To diagnose recording problems, the last 40 recording state changes and the latest status/error message remain in local extension storage. Download recording report saves a JSON file containing those messages, video metadata and storage totals, quality/frame-rate/limit settings, and local IDs linking recent matches to videos. It excludes footage, player names, private notes, microphone device IDs and stream tokens. Nothing is automatically sent to a server. Reports from versions before 0.12.1 cannot include session events that were never logged.
The Manage all videos page reads the same local video library. Its search, filters and selection stay in that page. Confirming Delete selected permanently removes only those videos and their stored chunks in one transaction; active recordings and clips being prepared are protected. Match history and unselected footage remain. There is no automatic deletion or cloud transmission.
The compact popup can confirm scores, result and opponent experience locally. Its unfinished review draft is shared with the local full-page companion, which also provides sharing, session recaps and recording settings. These pages read the same local records; opening them does not start tab or microphone capture. Detailed recording preferences moved to that page without changing their saved values.
Legend portraits in match history are bundled local Riftbound image assets from the app catalog. Viewing them makes no network request. Artist credits and original image URLs are included in assets/legends/credits.json.
Opponent name suggestions and experience prefill are derived from your local saved matches. A local assessment timestamp identifies the most recent choice. Removed matches are excluded, and old match ratings are not rewritten. No separate opponent directory or assessment timestamps are shared; exported matches retain only their own confirmed experience value.
Optional revealed-card helper
The helper is off by default. When enabled, it reads only visibly rendered opponent hand faces, their public card-instance IDs, and visible movements of those cards to the base, battlefields or trash. It does not read concealed face names, decks, chat, private game state, APIs or sockets. Other reveals can be entered manually by name. Duplicate rows retain separate card identities internally. A Played mark may be automatic from a visible move into play or set by you for one copy; it does not assert that an unknown or discarded card was played. Undo history stays with the same temporary per-tab notes and clears with them.
The list, captured public artwork URLs, room/player IDs used to isolate the game, and manual marks stay in extension session storage, per tab. Setup transitions, leaving the game, disabling the helper or restarting Chrome clear those notes. Page refreshes retain them. The enabled setting and panel layout stay in local extension storage. Neither notes nor helper preferences are added to result exports or diagnostics. No new extension permission is used. Hovering, focusing or clicking a card name may load its previously observed image from assets.riftatlas-workers.com, with no referrer header. The asset server receives the normal image request and network address, but no match notes, player names or room IDs. Only static card-image URLs are accepted. No API key, card-catalog lookup, or hidden-face URL inspection is used. Images remain subject to the browser cache and server availability. When shown, the panel and preview are visible in tab recordings.
Limited use
Rift Ledger Companion uses the information it handles only to provide its stated match-history, replay, clipping and card-note features. It does not sell user data, use it for advertising or credit decisions, or transfer it for unrelated purposes. Match data and recordings are not automatically sent to the developer. Support attachments are shared only when the user chooses to send them.
This website
This website is hosted on GitHub Pages. GitHub receives the technical information needed to serve pages and downloads, such as your IP address and browser request information, under the GitHub Privacy Statement. We have not added advertising, analytics, or contact forms to this website. Email support sends the information you choose to include through your email provider.
Contact
Questions about Rift Ledger Companion or this policy? Email rleinbox@gmail.com.
Last updated October 16, 2026.