What's new
- featMetaArchived decks grouped by event: the deck browser now lists each event's best lists newest first, with every list's value, what completing it costs you, and a cost filter.
- featMetaSlimmer decklist submission: adding a list from a standings row shows the tournament and player as read-only, reads the paste as you type, and works out whole deck vs main deck only from the cards.
- featMetaUpcoming events in their own list: the front page's tier sections now show only events with results, and everything still to come sits in a "Coming up" list beside them, soonest first.
- featMetaEvent pages redesigned: the header now shows the champion, format, and structure at a glance, and standings expand inline to preview each decklist's card mix, value, and how much of it you own.
- featMetaTiered tournament overview: the archive front page now groups events by tier: premier events carry the winner's legend art, and premier and competitive events list their top 3 finishes.
- featMetaLegends index shows each record: every legend now carries its best finish, event wins, decklists and finishes, recomputed for whatever era, format, tier or country you pick, and the columns sort.
- featMetaTournament results archive: a new Meta section collects Riftbound events with their winners, full standings and the top-cut bracket where one was played, scoped by era, format, tier or country.
- featMetaArchived decks you can fork: every published decklist opens as a real deck, shows how many of its cards you already own, and copies into your own decks in one click.
- featMetaContributions and credit: send in a missing decklist, complete a partial one, or suggest a correction, and get named on the event page if you want to be.
- featGroupsEmail when you're approved to join: approval used to be silent, and now sends a welcome with what the group gets you and a link to choose what you share.
- fixCollectionPiltover Archive import and export rebuilt: imports now read their Foil column, grading and notes instead of guessing from the card's rarity, a graded copy no longer merges into the ungraded ones beside it, and exports write their real format so the file goes back where it came from.
- featGroupsSee the cards, not the counts: the trades band on a group page now shows the actual cards behind each thing waiting on you and each possible trade, split into what you could get and what the group would want.
- featGroupsGroup cards worth scanning: each group on the index leads with the cards you could pick up there and how much has been traded lately, instead of member and list counts.
- fixCardsLegends go by their champion everywhere: a Legend now reads "Azir, Emperor of the Sands" on every surface (deck grouping, tab titles, exports, share images, the Discord bot), sorts under the champion, and drops the ", Starter" tail nobody says.
- fixAccountSigning in works again: an update had broken password, Google, and Discord sign-in (codes by email still worked), all three are back.
- featTradesCard art on the group trades page: each member card now previews the cards waiting on you, and the shared-list count moved down to the smaller footer line.
- featAppCreator tools have a proper home: the Stage and its OBS overlay, tier lists, and chat-bot card lookups each get their own section on the features tour and a help article with the setup steps, replacing the separate creators page.
- featAppFeatures page speaks to newcomers: the tour now leads with the free, no-ads, open-source pitch and one-minute collection import, and gives marketplace prices a full section.
- fixGroupsTrade counts on group cards: possible trades now sit as a green chip beside the other badges, and the trades page drops the "Your move" label that repeated what its counts already said.
- featAppSearch anything from anywhere: a search button in the header (or Ctrl+K, or just `/`) opens a palette that finds any card, jumps to any page, and opens help articles, from whichever page you are on.
- featAppInvite links work before you sign in: a group, tournament, or staff invite link now shows what it leads to up front, and brings you back to it after you sign in.
- featCardsRecord a card where you find it: the card browser and every card page now show how many copies you own and which collections hold them, with plus and minus to add or remove one.
- featCardsWishlist a card while you browse: a heart on every card, in the browser and on its page, puts it on a wishlist and shows which lists already want it.
- fixAccountPassword reset sends the code: "Forgot your password?" now asks you to send the code first, so you are no longer waiting on an email that nothing had sent.
- fixAccountSet a password on a social account: the profile page now offers to add one to a Google or Discord account, instead of a change form that could never work.
- featAppFeature tour at /features: a new page tours everything the app does in five chapters, with a jump menu that follows along as you scroll.
- featCardsRelated cards on every card page: each card page now ends with the cards closest to it: the tokens it creates, its champion's other cards, and similar cards from the same domain.
- featDecksCard previews in the Test tab: hovering a sample hand card or a draw-odds row now shows the card, clicking an odds row opens its details, and the buttons no longer shift around between draws.
- featDecksBox and Plan tabs say what they do: each tab now opens with a line explaining it, including what happens when you tick a card into the box.
- featDecksCard art in the box copy picker: picking a different copy now shows each one's art and code, grouped under the collection it sits in, and the list takes the arrow keys.
- featDecksCard details from the Box tab: clicking a row in a deck's Box tab now opens the card, showing the exact printing you're about to pull off the shelf.
- fixDecksMore room in box rows: box rows drop the energy and power costs, so the collection each copy comes from can show its full name.
- fixDecksBox copy picks stick: picking a different copy now closes the picker, and the pick survives ticking another copy of the same card into the box.
- fixDecksQuieter deck box rows: the box names a copy's language, finish or art variant only where it tells two of your copies apart.
- fixCardsPrinting rows select on any click: clicking a printing's code in the card detail list no longer jumps to the set page, so the whole row picks that printing.
- featCardsOne Owned filter: the playset buckets and the copies slider now share a single Owned dropdown, and the mobile filter panel lists them together too.
- fixCardsConsistent marketplace naming: the price history table on card pages said "Cardtrader" while the rest of the app says "CardTrader".
- featCardsFind a Legend by its champion: typing "Azir" now finds "Azir, Emperor of the Sands" in search, in every card picker, in imports and in the Discord bot.
- featCardsCard art in the pickers: every card and printing picker now shows a thumbnail, so near-identical variants are easy to tell apart at a glance.
- featAppCard search works the same everywhere: every picker, palette and quick-add box now ranks the same way, finds words typed in any order ("dark annie"), and matches part of a printing code.
- featCardsPromo list rebuilt around promos: the list view now shows each printing's channel, markers and note in place of its set, type and rarity, on phones too.
- featCardsStart a submission from an existing card: the submit-a-card page can now fill itself in from a card OpenRift already knows, and says up front that a partial entry is fine.
- featCardsSources for promo cards: a promo printing can now cite where its claims come from, on the card page and as linked source marks in the promo list.
- fixCardsClearer printings on the submit form: printings now name their language and finish instead of a number, and an error inside a collapsed one no longer blocks submitting silently.
- fixCardsReadable hover on card pages: hovering a printing, a price row, or an owned-collections popover turned the background gold and left the text on it barely legible.
- fixCardsDomain and rarity names in tooltips: domain icons on deck tiles and rows named the domain "fury" instead of "Fury", as did the domain and rarity icons on a card's details.
- fixDecksDeck menu submenus stay put: picking "Change format" or "Add to folder" on a deck opened that deck instead of the submenu.
- fixDecksCard browser stays open: adding a card to a deck could bounce you back to the deck overview, losing the zone you were building in.
- fixAppFast double actions land once: clicking twice or acting from two tabs at the same moment (submitting a tournament deck, clearing a collection while a trade lands, toggling a Discord trade channel) now applies once instead of racing itself into duplicates or lost changes.
- featAppHide the OBS overlay: Hide (or H on the stage) takes the card or ranking off stream for a break and puts the same one back, no second push needed.
- fixTradesTrade history survives deletions: completed trades now keep the other person's and the group's name when an account or group is deleted, instead of vanishing from your history.
- featCardsTier lists: rank a set from S down to D on a board you build by dragging cards, then share the link or take the image into a thumbnail.
- featAppThe Stage: put cards in front of an audience: a full-screen show you drive from the keyboard, and a transparent browser source you push cards to in OBS.
- featAppOne share dialog everywhere: decks, collections, lists, and tier lists now share it: the link and its QR on one tab, the image with shape, size, and scan-code choices on the other.
- featCollectionDownload your collection as an image: the share dialog now saves a collection as a wide or tall picture, which before existed only as the link preview.
- featDecksOne page for every deck comparison: comparing two versions or another deck now opens a full page with card art down both sides, searchable deck pickers, and a pasted deck code or list you can then save as a deck.
- featDecksAll deck PDFs under Print: proxies, the registration sheet, and the printable deck sheet moved into one Print dialog, opened from Print in the deck menu.
- featAppA proper match board: each player's side now shows the art of a legend you pick, scores through Conquer, Hold and Ability buttons instead of a hidden tap, and marks how close the game is with a pip per point.
- fixTournamentsDeck deadlines in your timezone: submission deadlines showed the server's clock without saying so, and now show yours.
- featDecksDeck variants: keep a budget build next to the full one, branch a copy before rebuilding, link two decks you already have, and compare any two versions; variants group under one deck-list entry.
- featDecksVariant history on the deck page: a branch graph under the deck title shows earlier versions and sibling builds, what changed at each step, and jumps straight into a full comparison.
- featCollectionShare images name the list: a shared list, collection, or bundle now unfurls with its name, its owner, and a scannable code back to it, instead of an unlabelled wall of card art.
- featCollectionSeparate price gains from new cards: the value chart now draws a second line holding each card at its value the day you added it, so the gap between them is what the market did rather than what you bought.
- featGroupsWishlist cards in the group box: the group overview counts the cards you want that are sitting in a shared bulk collection, and the box can filter down to just those, with amounts netted against trades already coming your way.
- fixCardsSnappier card browser: filters now apply in about half the time, and scrolling the grid holds a steady frame rate on phones.
- fixCardsFaster filtering on phones: the filter drawer opens in about half the time, and once it is open each filter you tap applies a quarter quicker.
- fixCardsQuicker first load: the card list now downloads your own languages first and fetches the rest quietly once the page is up, roughly halving what has to arrive before you see any cards.
- fixCollectionFaster stats filtering: the statistics page no longer stutters when you add or remove filters, and sets you own stop dropping out of the set picker as you narrow things down.
- featCardsSee what happened to cards you sent in: every submission from the contribute form now has a status page showing whether it was applied, already correct, or not used, with a reason when there is one.
- featCardsRelease dates per language: a set now carries its own date for each language it comes out in, so cards you cannot buy in your language yet are marked as previews until that date passes.
- featGroupsMembers page as a roster: the group's members are now a searchable, sortable list showing how many cards each person offers and wants, with contact icons that reveal a handle and copy it on tap.
- featTradesCheck what you own before offering: the available count on a card you would give away opens a breakdown of every variant you own and the collections holding them.
- featGroupsPossible trades on the groups list: each group card now shows how many possible trades it holds, so you can see where to go without opening every group.
- featCollectionIdentify-first scanning: the scanner now names and counts cards first and adds them only when you pick a collection, instead of adding as it goes.
- featCollectionScan sessions survive leaving the page: navigating away or reloading no longer clears the scanned list, and a session older than a day offers a fresh start.
- featAppScan from the main menu: the card scanner now sits right in the menu on every page, and the menu itself is grouped into Play, Organize, and Explore sections instead of one long list.
- featDecksSort a deck by card ID: the deck view can now order cards by set and collector number, and sorting by ID everywhere follows the set order instead of the letters in the code.
- featDecksCards on their way from a trade: a deck's missing cards now mark the copies already reserved to you in a swap, so you don't buy one that's about to arrive.
- fixTradesTrade counts agree everywhere: the members page, the Trades page and a member's trade sheet now count from one rule, so a person the sheet calls settled up no longer shows trades waiting on them.
- featTradesA trade sheet for every trading partner: one page per member showing your live trades both ways, suggestions, history and value, pooled across every group you share.
- featTradesTrades page rebuilt around people: whatever needs you comes first, then one card per member with the whole relationship at a glance, instead of status sections.
- featTradesAt the table, start to finish: one session for a meetup: answer open requests on the spot, count what actually changed hands, and settle only that much, with anything missing staying an open trade for next time.
- featCollectionScan now, add later: a "Just identify" session can be committed afterwards: one button adds everything it counted to a collection of your choice, and offers to tick off matching wishlist entries.
- featCollectionSee what a pack was worth as you scan: every scanned card now shows its price, wishlist heart and owned count, with a session total and best pull (duplicates count even in Just identify mode).
- featTradesChoose the copy you handed over: confirming your half of a swap now asks which copy left whenever your copies differ or sit in different collections, instead of removing whichever one was pinned.
- featDecksFolders for your decks: sort decks into folders you name yourself, group the list by them, and filter to one; a deck can sit in several folders at once.
- featTradesEach side confirms its own half of a swap: instead of one person marking the whole trade done, you say you handed the cards over or that you got them, and the trade closes once you both have.
- featDecksDeck stats before you import: the import preview now shows the deck's size, domains and format legality, plus how much of it you already own and what the rest would cost.
- featDecksDeck import on phones: the preview reads as a list of cards, matched rows tuck their controls behind a tap, and the import button stays in reach at the bottom.
- featDecksCard details from the missing list: clicking a card in a deck's missing-cards list now opens its details over the list, with arrow keys stepping through the cards you still need, instead of leaving the page.
- featDecksTokens your deck needs: deck and shared deck pages now list the tokens your cards create as one more section of the deck, and clicking one opens its card details.
- featDecksTell a deck which box it lives in: pick or create the box a deck is stored in, and a new Box tab shows what is already in it, which collection to pull each remaining card from, ticks cards off as you sort them, and offers to move out anything the deck doesn't need.
- featDecksDeck value is what it costs, not what's pinned: every price on the deck page now uses the cheapest printing in your languages, so pinning a premium art no longer inflates the value; the premium figure moved into the value popup.
- featDecksDeck guides with card links: the description is now a full guide editor: type [[ to link any card (hover shows it, click opens it), write with a live preview, edit it straight from the deck page, and add up to five links (YouTube, RiftMana, TopDeck.gg and more) crediting where the deck came from.
- featDecksSee which cards you borrowed: deck rows now mark the copies you have on loan and name who lent them, the card bands and Collection chart count them apart from what you own, and a deck completed with a friend's cards says "Ready to play" rather than claiming you own it.
- featDecksStacks view: a third deck layout besides grid and list: cards fan into piles showing their name bars, and hovering a bar unfolds the full card in place.
- featDecksQuick-add palette: press Ctrl+K in the deck builder, type a card name, and Enter adds it straight to the right zone, sideboard and champion picks included.
- featDecksCustom deck cover art: pick any card in the deck as the backdrop of its hero, tile, and share image, with an adjustable crop.
- featDecksTurn-1 and curve-out odds: the stats band now shows how often your opening hand holds a turn-one play, and how often you can play something on every turn through turn 3.
- featCardsCard details open in a window: clicking a card now opens a wide window with the art and text side by side instead of shrinking the grid, and the new options-bar button docks the side panel for good if you prefer it.
- featDecksRarity and collection in the deck stats: two new lens bars show the deck's rarity split and how much of it you own, and clicking a segment filters the cards like the other charts.
- featDecksShared decks get real tabs: shared deck pages now use the same Deck, Test, and Plan tabs as your own decks instead of one long page.
- featDecksCard art in the deck's list view: every row now leads with a small art preview, next to the prices and owned counts it already showed.
- featCardsBigger cards at high column counts: the spacing between cards now shrinks as you add columns, so at 12 across each card is about a sixth larger than before.
- featDecksA deck dock on phones: while adding cards on a phone, a bottom bar shows the zone's fill, your latest change, and an undo button, and tapping it opens the zone list.
- featDecksCompare with another deck: paste a deck code, share link, or card list to see exactly what to add, cut, or adjust, with owned counts on the additions.
- featDecksSee what you own at a glance: deck thumbnails carry a small band split by your copies: green for the printing shown, blue for other printings you own, empty for missing. A pinned printing now shows a small pin instead of a colored border.
- featDecksUndo in the deck builder: any card change can be taken back with Ctrl+Z or the new top-bar buttons (Ctrl+Shift+Z redoes), including bulk removes.
- featDecksTest sideboard swaps: the Test tab lets you bring sideboard cards in and take main-deck cards out to see how hands and draw odds change, without touching the deck.
- featDecksRune odds by turn: the Test tab shows the chance of having channeled enough runes of each domain by turns 1 to 4, going first or second.
- featDecksEvery deck gets a hero: the overview and shared decks open with the deck's legend and champion art over its domain colors, deck status as tappable chips, and link previews glow to match.
- featDecksTest your opening hand: the new Test tab draws sample hands with the real rule (4 cards, exchange up to 2 once) and lists every card's chance to show up early, on your decks and shared ones.
- featDecksSee the deck in your printings: a toggle swaps every card image to the version you own, so the deck looks like what you would actually sleeve up.
- fixDecksBanned cards now fail validation: a Constructed or Custom-Region deck holding a banned card is flagged instead of passing as legal.
- fixDecksTokens no longer offered in the deck builder: tokens are created during play, so they no longer show up when browsing a zone, can't be added to a deck, and are flagged if an imported list contains one.
- featTradesFile traded cards in one press: a card you received now goes straight to your inbox, with a three-dot menu to send it elsewhere (the button then remembers that collection) and an Add all button per member.
- featCollectionManage cards on a list: wishlists and tradelists get the same top-bar Manage button and Select all as a collection, so bulk move and remove no longer hide behind a small toolbar icon.
- fixCollectionStatistics filters all work now: chips set to exclude did nothing, and keywords, tags, custom tags, size and standard-printing were ignored outright; all of them now narrow completion, cost to complete and the value chart.
- featCollectionScan cards with your camera: hold a card in front of your phone and it is added to the collection you picked, recognised on the device itself so no pictures are uploaded.
- featCollectionNumber keys add copies: click a card in the grid, press a number from 1 to 9, and that many copies land in one press.
- featTradesTrade status on your own cards: a copy you have offered, reserved or already handed over now says so in your collection and on your lists, and the same copy can no longer be promised to two people at once.
- featTradesChoose which copy you hand over: accepting a request lets you pick, and only asks when the copies actually differ, so a graded or noted card is never promised by accident.
- featTradesDiscord trade channels: mark a channel with `/tradechannel` and the bot answers ordinary posts that name a card with who in your group has it, no command needed.
- featAppOpenRift Discord bot: add the bot to your server to look up cards, unfurl deck codes, and quote rules right in chat, with setup steps in the Help Center.
- featCollectionDynamic rules for organize lists: organize lists now take the same filter-driven rules wish and trade lists have, so a list can fill itself with every card matching a filter, or every matching copy in your collection.
- featCollectionPrice filters in dynamic rules: list rules can now match by market price on a marketplace you pick (for example, offer every card worth 5 or more).
- fixCollectionValue over time matches your collection value: the chart ended on a different figure than the value beside it, and cards listed under several marketplace entries could take the wrong price.
- fixCollectionCollection stats follow your filters: the totals and estimated value at the top of the stats page counted your whole collection while the charts below them honored the active filters.
- featProductsProduct pages load instantly: a product's card list now arrives with the page instead of appearing once the card data finishes loading, and repeat visits are served from cache.
- fixAppMissing help articles: articles kept behind a feature flag never appeared in the Help Center index, even once the flag was switched on.
- featCardsReal artwork for missing images: printings without a scanned image now show the standard printing's artwork, labeled as placeholder art with badges for anything the borrowed image doesn't show (language, promo stamp, signature).
- fixCardsSharper scanned card images: scans now crop tightly to the card (dust on the scanner glass no longer leaves wide white margins) and get a contrast fix that restores true blacks on washed-out scans.
- featDecksMissing cards straight to a wishlist: the missing-cards view can now top up one of your existing wishlists, and a new copy button gives a paste-ready wants list for Cardmarket's shopping wizard.
- featCollectionCSV export in more formats: collections now also export in RiftMana and RiftCore layouts, and wishlists and tradelists can download as CSV in any supported format.
- featDecksSmarter deck import: the importer now detects what you pasted (deck list, deck code, TTS string, or a shared-deck link) and can read a deck straight from an uploaded file or a URL containing a deck code.
- featTournamentsSimpler tournament setup: the create page trims the explanations and groups play mode, pairings (one Swiss BO1/BO3 or FFA choice with an on/off switch), points and decks into compact two-column cards.
- featTournaments2v2 teams shown as teams: match cards, the standings preview and result entry now treat each duo as one entry with a shared score, combined avatar initials, and per-side scoreline buttons.
- featAppA QR for every share link: collection, list, deck, profile and all-lists links now show a scannable code next to the link, so you can hand one to someone at a table without printing anything first.
- fixCollectionAccurate bulk move and dispose: when a large move or dispose fails partway, the cards that already went through now stay done, with the error covering only the rest.
- featTournaments2v2 team tournaments: pick 2v2 as the play mode, pair players into fixed teams of two, and run Swiss rounds where teams are paired, scored, and ranked together (decks are also checked against the 2v2 banlist).
- featTournamentsYour deck lives on the tournament page: every tournament you entered now shows a My deck tile that opens your list, tells you when it is still unsubmitted or a judge asked for changes, and replaces the old "My tournament decks" entry in the account menu.
- featAppSorting and grouping stick per page: cards, collections, decks and promos each remember how you last sorted and grouped them, while a link someone shares still opens in their view without changing your own.
- featCollectionPrintable binder QR sheet: share dialogs can now create a PDF with a QR code to your link, sized to a real card or a 2×2 or 3×3 binder page, so trade partners can scan it out of your binder.
- fixCardsSearch ignores punctuation: "dorans shield" and "doran's shield" now find Doran’s Shield, and searching card text no longer needs the exact apostrophe, dash or accent that the card is printed with.
- fixAppCrash on older iPhones: card, deck and collection pages failed to load on iOS below 17.4, and now work again.
- featProductsAdd a product to your collection: one click on a product page (or the plus on the products list) puts the full card list into a collection of your choice.
- featCollectionSpecial versions count as owned: wishlist rules gain a "Count special versions" switch: alt arts, foils, signed and promo copies fill the missing count, while the list keeps asking only for printings matching the filter.
- featTradesCondition and notes on suggestions: trade suggestions now show the offered copies' condition (or grade) and public notes, so you know what you'd get before requesting.
- featCollectionMove cards with the quick palette: the Ctrl+K palette gains a Move mode: pick source and target collections and shift copies by typing card names.
- fixCardsMobile card-detail navigation crash: swiping through cards on a phone no longer crashes when the list changed while the detail view was open.
- fixTournamentsTournament pages for players: opening a tournament as a player no longer shows an error screen, and a pending join request no longer breaks the pairings and standings for everyone.
- featDecksSideboards hold 10 cards: the sideboard limit is now 10 instead of 8, in the builder hints, the deck legality check, and the registration sheet.
- featCardsFormat-specific ban display: cards banned only in 2v2 now carry a "2v2 Ban" ribbon and stay usable in the deck builder, while full constructed bans keep the red banned treatment.
- fixRulesTidier rules toolbar: the toolbar background now reaches the screen edges on phones instead of stopping short, and the changes toggle is a compact icon button.
- fixRulesReadable rule diffs: comparing rule versions no longer shows garbled characters or misplaced highlights, and rules whose wording never changed are no longer flagged as changed.
- featTournamentsRedesigned tournament pages: the tournament page now opens with an event header and leads with the live round and a standings podium, and the players, pairings, standings, and staff pages match the same look.
- featTournamentsSwiss 1v1 rounds: tournaments can now pair head-to-head Swiss rounds (best of 1 or 3) with configurable win, draw, and bye points, automatic byes, and strong rematch avoidance.
- featTournamentsPlayer regions: assign each player a region: pairings avoid same-region matchups and the standings add a per-region leaderboard.
- featTournamentsEvents pages redesign: the next tournament gets a hero card with legend art from submitted decks, and past events line up on a timeline with winner callouts and participant avatars, on the tournaments page and in groups.
- featGroupsRedesigned group page: a new group header with card art and member avatars, one trades hub for matches and in-progress trades, and an activity feed that folds big trade sessions into a single entry.
- featTradesRedesigned group trades page: a summary band shows what needs your action and the value at stake, trades waiting on you come first, and members' shared lists appear as cards with contact info.
- featGroupsA friendlier groups overview: groups now show as tiles with member photos, shared-list counts, and a clear marker on any group that needs your attention.
- featTournamentsEnter just your own score: players on the result link can now save their own game points next to their name; the pod completes once everyone has entered theirs.
- featTournamentsLive round updates: while a round is open, the results page refreshes itself, so scores saved by anyone appear for everyone without reloading.
- featProductsCard-art product tiles: the products page now shows each product with a fan of its signature cards, a short description, and the card counts.
- featDecksAny number of copies: cards whose text allows more than 3 copies of themselves now build and validate correctly, with the add buttons and drag limits following the printed rule.
- featCardsSee which products contain a card: every card page now has a "Found in" list showing the sealed products and promo channels the selected printing comes in, with how many copies.
- featCardsChinese cards now use the printed code: Simplified Chinese printings show as SC, matching what Riot prints on the card, and saved links and language filters carry over on their own.
- featTradesCardmarket export for trades: each trade partner now has an export that copies your agreed cards as a plain list, ready to paste into Cardmarket's shopping wizard for pricing.
- featDecksList view for decks: a new list toggle on the deck overview shows every card in dense rows (count, energy, ownership, price, set code) that you can sort by name, energy, price, rarity, or how many you still own.
- featDecksMissing cards, ready to buy: each missing card now shows its cost inline (copies × price), links its name to the card page, and has a button to buy it on your marketplace.
- featCollectionClear your Inbox: the Inbox can't be deleted, but its menu now has a clear action that removes every card in one go.
- featCardsFilter by card tags: a new Tags filter groups the tags printed on cards by region, champion, and species; tag chips on card pages now apply it directly.
- fixAppEnter confirms dialogs: pressing Enter in confirmation and edit dialogs now triggers the main button (save, create, remove) instead of doing nothing.
- featTournamentsDeck-check API hint in settings: tournament settings now show the tournament ID and link to the Deck check tab, so pushing decklists in from another tool is easier to find.
- fixTournamentsDeck-check pushes before start: pushing decklists in from another tool no longer fails with a conflict error while the tournament is still in setup, so decks can be handed in before it begins.
- fixGroupsSmart list counts everywhere: dynamic wishlists and tradelists that held cards showed 0 items on member pages, the share picker, and public profile lists, and now show their real size.
- fixGroupsMissing in-progress trades on member pages: a member's page hid trades whose cards were already reserved, and now lists every trade in progress with that member.
- fixCollectionAdd popup on scrolled cards: clicking a card's count pill after scrolling down a collection jumped the grid to the top instead of opening the variants and add popup. The grid now stays put, the popup opens where you clicked, and clicking the same pill again closes it.
- fixGroupsBulk box playset filter: filtering a group bulk box by copies owned now counts your full personal playset across every variant (foil and normal together), so a card you already own enough of no longer shows under "cards I'm missing".
- featTradesTrades grouped by person: the Trades page now stacks your trades and possible trades under each member with a running value estimate, plus bulk Accept all, Decline all, Cancel all, and Request all buttons.
- featProductsProduct catalog: the new Products page lists official products with every card inside.
- featCollectionCard lending: right-click a card in your collection to lend it to a friend: it stays owned but stops counting for decks and trades until it's back, and the new Lending page tracks who has what, including cards you're borrowing.
- fixTradesWishlist rule filters now limit matches: a dynamic card want no longer matches printings its filters exclude (like overnumbered variants), and "only what I'm missing" no longer counts such copies as owned.
- featCollectionTrack each copy's condition: right-click any owned card to record its condition or professional grade, an altered flag, notes, and photo links; imports and exports keep conditions, and removing a copy with details asks first.
- featCardsMulti-type card support: cards with more than one type (like the new Unit Gear cards) now count for every type they carry: filters, grouping, deck rules, and copy limits all recognize both, and the card shows a glyph for each.
- featAppNew body typeface: everyday text across the app, and the generated share and deck images, now use Hanken Grotesk, a warmer face that reads softer than the old default.
- fixAppConstant background redraw on card pages: a hidden render loop kept the card, collection, and deck pages working nonstop even when idle, draining CPU and battery for nothing.
- featCollectionMultiple rules per tradelist: tradelists can now stack up to 10 dynamic rules, and both wishlists and tradelists let you pick how overlapping rules combine.
- featCollectionReplace on import: importing into a collection that already has copies now asks whether to add to it or replace everything with the import.
- featAppRedesigned landing page: a fanned hand of real cards takes center stage: hover to tilt them, click to collect them all, with sharper copy and new angular buttons.
- featAppNew display typeface: page titles, section headings, big stat numbers, and the OpenRift wordmark now use Chakra Petch, giving the app its own voice instead of the default font everywhere.
- featAppSharper, angular look: corners are tighter across the app, filled buttons carry a signature corner cut (delete buttons now solid red with the same shape), and tiles share one consistent card style.
- featAppFriendlier empty screens: pages without content yet (decks, collections, lists, search results) now show a fan of card outlines with clear next steps.
- featDecksTry a sample deck: the empty decks page offers a ready-made Azir deck that opens in the builder with one click, no account needed.
- fixAppCleaner message punctuation: error messages, toasts, and the What's new list now read as plain sentences instead of dash-heavy phrasing.
- fixDecksDeck codes for special printings: exporting a deck code no longer fails when the deck pins a printing deck codes don't support yet (like a Founders alt art), it encodes the default printing or lists the skipped cards instead.
- fixDecksLocked zones reject dropped cards: dragging a card from the browser onto a zone shown as locked (like the sideboard on a Custom-Region deck) no longer adds a copy there.
- fixDecksOne battlefield pick in plans: the deck plan for Custom-Region decks now offers a single battlefield slot instead of three, and the too-many-battlefields warning explains itself in plain words.
- fixDecksShare dialog mentions your Plan: the deck share dialog now says the link includes your Plan (strategy, mulligans, matchup notes), so nothing goes public unexpectedly.
- fixDecksSigned-out decks survive bad storage: decks built while signed out now load even when the browser's saved data is partially damaged, keeping every intact deck instead of failing the deck list.
- fixTournamentsHosted events survive account deletion: deleting your account now removes you as host instead of erasing the whole tournament, so participants keep their results.
- fixTournamentsNo false region warning in deck checks: Custom-Region deck checks no longer flag every deck with "Pick at least one region".
- fixTournamentsEmail never used as player name: joining an event without an account name now shows the part before the @ of your email, never the full address.
- fixCardsBad links can't crash the catalog: a card-browser link with an unknown grouping or sort value now falls back to the defaults instead of showing an error page.
- featDecksCustom-Region rules update: signature cards need their champion in the deck copy for copy, only one battlefield is played, there is no sideboard, runes of every domain are allowed, and ban badges no longer show.
- featCardsOne filter bar everywhere: the slim filter bar is now the standard filter layout on every screen size, replacing the filter sidebar, the fold-out panel, and the compact-filters setting.
- featCardsPick your top-level filters: decide per filter whether it sits in front or waits under "More", replacing filter hiding (previously hidden filters now show up in More).
- featCardsContribute cards in the app: submit a missing card, a correction, or an image right from the app and send it straight to review, no GitHub account needed.
- featDecksDeck image in the Export menu: download the shareable deck picture from a new Image tab in Export, for any deck, without turning on link sharing first.
- featCardsFilter by "has any" or "none": require a card to have at least one (or zero) markers, custom tags, distribution channels, or keywords, without naming specific values. The old Promo filter is now "Has any marker", and dynamic list rules get the same options (including supertypes) so a saved rule stays correct as the catalog grows.
- featDecksBuild decks without signing in: start a deck right away, save it on this device, and import a deck code while logged out; sign in later to keep the ones you pick.
- featGroupsIn-progress trades on the overview: the group page now lists the trades you're waiting to finish, so a request you sent or a deal awaiting hand-off no longer disappears until it's complete.
- featCollectionDrop a card from a list rule: a card a dynamic rule added can now be excluded so it stays off the list, and you can put it back from the rule editor.
- featCardsExclude values from filters: click any filter value a second time to exclude it (sets, types, rarities, domains, and the rest, in the dropdowns too), hiding it from the catalog, with each exclusion shown as a chip you can clear.
- featCollectionDynamic lists: wish and trade lists can now fill themselves from saved rules (a playset of every card, every surplus common you own beyond two playsets, and so on), staying up to date automatically instead of being added by hand. A wish list can stack several rules and combines their matches.
- fixCollectionShared list links open again: opening someone's shared wishlist or tradelist returned an authorization error for signed-out visitors, and the public share page now loads for everyone.
- featTournamentsOne home for your events: the new Tournaments area runs pod pairings and standings, collects player decklists, and lets judges check them, all on one event hosted by you or an organization, with times in your own timezone and multi-day scheduling.
- featCollectionImport CSVs into lists: both a list's own Import and the Import / Export page now accept any supported CSV (OpenRift, Piltover Archive, RiftCore, RiftMana) and can send the cards to a list instead of your owned collection, keeping each card's finish and art variant.
- featCollectionOne menu for variants and collections: the count box on a card now opens a single menu listing each variant with the collections your copies live in, where you can add or remove copies per collection (or add to another collection) right there. Removing a copy that could come from several places opens this menu instead of chaining through separate pickers.
- featCardsOversized cards: cards that also come in a physically larger print are now tracked as their own variety, so you can filter by size and collect the oversized version separately from the standard one.
- featCardsCompact filter bar: a new optional filter layout (turn it on under Display settings) collapses the filters above the grid into domain and rarity icon toggles plus small dropdowns, so a crowded filter area stays tidy.
- featCollectionExport to Piltover Archive: the collection export now offers a Piltover Archive CSV format alongside OpenRift's own, so you can move your collection straight into Piltover Archive.
- featTradesTrade update emails: you now get an email when the other person accepts, declines, or cancels a trade, batched so a whole basket of cards arrives as one message, with its own toggle under email settings.
- featAccountOne-click email unsubscribe: the native Unsubscribe button in Gmail and Apple Mail now works, and the in-email link opens an on-brand confirmation page.
- featDecksRich deck share previews: shared deck links now unfurl with a full visual decklist (legend, runes, battlefields, and cards), and you can download a high-resolution version for chats or printing.
- featCollectionRich previews for shared collections: a shared collection link now unfurls with a card-art preview when posted to Discord, chat, or social, the same way shared lists already do.
- featTradesRequest copies one at a time: request individual copies from a member's tradelist, each requested copy shows a "Requested" tag you can click to give back, and requesting more adjusts your existing request instead of erroring.
- featTournamentsEnter game points, not places: score each pod by typing every player's game points (8 wins, more when a turn overshoots), and the finishing order and standings points are worked out for you. Total game points now break ties in the standings.
- featGroupsTake cards from a group bulk box: browse a group collection and move copies into your inbox with the Take button on each card. A confirmation lets you choose how many copies to take. Cards on your wishlist show a red heart with how many you still want. Click it to jump to that wishlist, and after taking one you wanted, you're asked whether to drop it from the list.
- featGroupsShare contact methods, not a nickname: let group members reach you on Discord, Signal, phone, or email. You control which channels each group sees, and nothing shows until you opt in.
- featGroupsRedesigned group dashboard: your group opens to what matters: trades waiting on you, what members are sharing, and upcoming events, each a tap away.
- featTradesOffer cards from member wishlists: see something on a member's wishlist you own? Offer it in one tap, straight from their list.
- featGroupsOne-stop Trades page: browse everything members offer and everything they want in one place, right next to the trades you can make.
- featDecksDeck Plan tab: capture how to pilot a deck: gameplan, opening hand, battlefield, and per-matchup sideboarding, then share it on the deck page.
- featCollectionTake a card off your tradelist: sold or traded a card? Take it off in one step and it leaves your collection too. Keeping it just clears the tradelist.
- featTradesEmail notifications for trades: know the moment someone wants to trade with you, with an optional daily digest of new matches in your groups.
- featTournamentsZone fixes after approval: judges can correct a mis-zoned card after approval without being able to swap it for a different one.
- featTradesWant button on shared tradelists: request a card straight from a group member's tradelist, picking or creating the wishlist it goes on, in one step.
- featTradesClearer group Trades page: active trades come first, completed ones collapse away, and a sent trade tells you who you're waiting on.
- featCardsLegends shown by champion name: Legends now lead with their champion name everywhere, and search finds them by either the champion or the card name.
- featCollectionList sharing is now opt-in: lists start private and joining a group no longer auto-shares them. You choose which to share when creating or joining.
- featTournamentsFix mis-zoned tournament decks: a judge can move flagged cards (all or some copies) to the right zone in one step, reviewing each move first.
- featCollectionSafer collection removal: removing cards warns when they're also on a list and names which, and big batches ask you to type the count to confirm.
- featTournamentsTournament deck submission via OpenRift: players submit a deck through a per-event link (pick one, paste a deck code, or paste a card list), with legality warnings before sending.
- featTournamentsTournament deck lifecycle: submitted decks lock and move through clear states, change only when a judge grants an unlock, and a deck still open at close is sent in as-is.
- featTournamentsPer-event relaxed deck lock: organizers can let players fix their own submission without a judge until submissions close, handy for casual leagues.
- featTournamentsClaim your tournament deck: a link in the organizer's confirmation email connects your entered deck to your account just by signing in.
- featTournamentsMy tournament decks menu: decks you entered appear in the user menu with their status and any judge note.
- featTournamentsJudge deck-check controls: judges can withdraw and restore entries, share a claim link, connect an entry to a player's account, and leave them a message.
- featTournamentsCheck physical cards while approved: a judge can approve the list first, then do the physical card check before recording the result.
- featTournamentsDeck publish consent at submission: you choose whether the organizer may publish your list after the event, and whether your name and Riot ID appear.
- featAccountRiot ID on your profile: save your Riot ID once and it fills in automatically when you submit a deck to a tournament.
- featTournamentsDeck checker list view and layout controls: switch to a scannable row-per-copy list with tick-off checkboxes, sort, and choose cards per row.
- featTournamentsMembers see their own event decks: entrants get an Events tab showing their own decks, while the full entrant view stays judge-only.
- featCollectionList visibility per group: each list's Share dialog lets you choose which groups can see a wishlist or trade list, so members can find matches with you.
- featAppShared page headers: groups, tournaments, rules, the pack opener, the designer, and the match tracker now share one compact header that stays pinned as you scroll.
- featGroupsTidier group overview: one trades tile shows what needs you, the shared tile leads with how much members have shared, and admins get an Invite button.
- fixAppRecovery after a release: opening a page right after a new release no longer leaves you stuck on a broken view, and stale service workers are cleaned up.
- fixRulesDuplicate copies counted correctly: a card held under several printings no longer triggers warnings twice, and copy limits count all copies together.
- fixTournamentsFrozen deck-check verdicts: a checked or flagged entry's card list locks so the verdict can't change by accident, until you re-open the entry.
- featTournamentsAdd deck-check entrants by hand: judges can type a player's name and paste their decklist when the organizer system can't send it. System entries carry an API badge.
- featGroupsGroup collection tiles: the overview splits the group's own collections from members' shared ones, with new-collection, share, and invite buttons.
- featDecksPinned deck list filter bar: the deck list's search and filter bar stays pinned as you scroll, so you can refine without scrolling back up.
- fixAppFaster first load after a release: releases now refresh only the files that changed instead of discarding all cached files, so first visits aren't slow.
- fixAppReload notice after a release: a new version shows a notice with a working Reload button instead of refreshing on its own.
- fixAppFaster clicks on slow connections: clicking filters or moving between pages no longer freezes while waiting for the server to confirm your theme settings.
- fixDecksShared deck card details: opening a card's details on a shared deck page no longer crashes the detail panel.
- fixCardsNew cards show immediately: newly added cards appear in the browser right away instead of briefly showing then dropping out from an hourly cache.
- fixAccountExpired session redirect: when your login expires with the app open, you're taken to the login page and brought back where you were, instead of a crash.
- featTournamentsPod tournaments: run a free-for-all pod tournament: add players, each round splits into fair 3- and 4-player pods, tap finishing order to update standings, and share a follow-along link.
- featTournamentsPod tournament round editing: drag players between pods, sit someone out with a bye, switch scoring, and get warned when players would meet again or scores are lopsided.
- featCollectionFilter shared collections by copies owned: filter a shared or group collection by how many copies you own, to spot which cards you don't have a full playset of yet.
- featCollectionShare lists three ways: wishlists and trade lists can be shared as a card image, a copy-paste card list, or a link that shows a card preview in WhatsApp or Discord.
- fixCollectionAccurate completion for single-copy cards: completion and cost-to-complete now count Legends, Battlefields, and unique cards as needing one copy, matching deck rules.
- fixCardsBattlefield card orientation: Battlefields show in their correct landscape orientation as the page loads, fanned stacks in Firefox no longer cut them off, and they no longer join the home page's floating cards.
- featDesignerCard Designer: make your own Riftbound-style card with your photo and details, then download or copy it to share, all in your browser.
- featGroupsGroup overview and Trades page: each group opens to an overview with a recent-activity feed, all trades live on one Trades page, and the group's cards and lists sit together on a Shared page.
- featCollectionPick groups when creating a list: choose which friend groups a new wishlist or list is shared with right in the create dialog.
- featCardsCopies filter: narrow the view by how many copies you own, on the cards page, deck builder, and your collections.
- featGroupsJoin request badges: requests waiting for your approval show as a count on the Groups nav item and under the group's name.
- featCardsCustomize filters: pick which filters you see and hide the rest, with your choice carried across devices when signed in.
- featDecksOverflow zone holds anything: the Overflow zone now holds any card type in unlimited copies, none counting toward deck legality or the 3-copy limit.
- fixCollectionSensible list pricing: lists no longer force a fixed default price. Set fixed prices on individual cards where a single number makes sense.
- fixCardsPer-section owned counts: a card in more than one set or rarity now shows that section's count instead of the same number everywhere.
- featAppMatch tracker scoring and layout: change a player's points by tapping their card (left subtracts, right adds), and "Who goes first?" picks a player or runs a Random spotlight.
- featApp2v2 match tracker mode: choose Teams in setup so teammates share one score toward 11 while keeping their own XP, color-coded around the table.
- featDecksCards and Printings in the deck builder: switch the browser to Printings to pick a specific printing's art as you add it, with the 3-copy limit still applying across all printings.
- featCollectionCollection starts in your languages: your collection opens filtered to your preferred languages, clearable to see cards you own in other languages.
- fixTradesTrade collection update: the one-click update that adds received cards after a trade now works instead of failing on the receiving side.
- fixCollectionAdding cards no longer drops them: cards you add now stay. Before, the app misread the server's reply and rolled them back with a spurious error.
- featAppMatch tracker: keep score and XP for 2 to 4 players on one device, with a points target, a winner announced at the target, and a built-in way to pick who goes first, working offline.
- fixAppSettings sync across devices: your language filters and collection-completion settings now sync across devices instead of silently resetting on reload.
- fixAppSpecific error messages: a failed action now explains the specific reason from the server (like "Cannot delete the inbox collection") instead of a generic one.
- featDecksGroup collections in your deck building: choose per shared group collection whether its cards count toward your deck building, starting excluded until you opt in.
- fixGroupsShared group cards visible to all: cards added to a group's shared collection are now visible to every member, not just whoever added them.
- featTradesRequest a card from a group member: ask for a card you want, where accepting reserves it and updates your collection, wishlist, and tradelist in one click, tracked on a per-group Trades tab.
- featCollectionMulti-select on lists: pick several cards on a wishlist or tradelist (click to toggle, shift-click for a range) and move or remove them at once.
- featGroupsGroup page tabs: the group page splits into Trading, Collections, and Members tabs, with all management actions tucked behind a "Manage" link.
- featCollectionShare collections with groups: share a personal collection read-only with one or more groups, so members can browse it from the group page or your link.
- featCollectionShow library on collections: the box icon toggles the grid to show every card in the catalog, with a + on unowned ones to add.
- featCollectionShow library on lists: wishlists and tradelists gain the same "Show library" toggle, with a + to add cards that aren't on the list yet.
- featCollectionDrag cards between lists: drag a card from one wishlist to another (or tradelist to tradelist) to move it, merging quantities if the destination already has it.
- featCollectionReorder sidebar lists by dragging: drag rows to reorder your personal collections and lists, while the Inbox stays pinned at the top.
- featTradesMatch price preferences panel: each match tile shows both sides' price preferences as "They want" / "You'd pay", falling back to "Not set".
- featTradesCollapsed wishlist trade rows: several printings of the same wishlist card from one member collapse into one row that expands to show each printing's count and price.
- featCollectionPer-printing count pill: a card's count pill shows the per-printing count with the per-card total in parens (like "x10 (17)"), and clicking it opens the variants popover.
- featCollectionPin a variant for the session: clicking a variant in the fan pins it as the top printing for the rest of your session, so counts and add controls follow it.
- featGroupsGroups renamed and promoted: friend groups are now just "Groups" with a top-level Groups link in the main menu and mobile sidebar.
- featCollectionPer-group sharing on lists: a list's Share dialog gains per-group toggles, so you can pick which groups see a wishlist or tradelist.
- featAppHelp articles on lists and groups: two new help articles cover wishlists and tradelists and how groups work (roles, joining, sharing, matches).
- fixCollectionOwned filter on collections: the Owned filter now actually narrows the grid by the copies you hold in this collection, where before it did nothing.
- fixGroupsGroup member menu actions: Promote to admin, demote, transfer ownership, and remove now actually run when clicked instead of just closing the menu.
- featTradesTrade preferences on lists: wishlists and tradelists carry a per-list price default plus an accepts cards/money/both hint, overridable per card and shown on match rows.
- featCollectionOne link for all your lists: a single URL covers all your shared wishlists and tradelists, showing only what you've made public or shared with a group the viewer is in.
- featGroupsShared group collections: any member can create a shared collection, add or remove cards, and see it in the sidebar, with admins able to rename or delete it.
- featCardsOwned-count variant popover: clicking the owned-count pill on All Cards opens a popover listing each variant with +/- buttons and which collections every copy is in.
- featCollectionNumber-key drag quantities: when dragging a card stack between collections, hold a number key from 2 to 9 to move that many copies (Shift moves the whole stack).
- featGroupsFull browser for member lists: opening a member's list now uses the same browser as a public share (filters, sort, group-by, virtualized grid).
- fixTradesTrade preference editing: preferences can now be edited from any list view, saving works instead of failing silently, and a currency-less Fixed price asks which currency.
- fixCollectionValue Over Time chart: the chart now matches the Estimated Value in the Stats section, instead of undercounting older copies.
- fixCollectionDomain names on stats: the domain donut and "by domain" rows now show proper domain names (Fury, Calm, …) instead of lowercase slugs.
- fixCollectionQuick add searches full catalog: quick add now searches the whole catalog even when the grid is filtered, and no longer wipes your search after the first add on an empty collection.
- featDecksCreate wishlist from missing cards: turn a deck's missing cards into a wishlist in one click, pre-named after the deck.
- featDecksMove deck cards by menu: right-click or long-press a card in the deck builder to move it to another zone, the main way to move cards on mobile.
- featCollectionWishlists and Tradelists naming: buy and sell lists are now called Wishlists and Tradelists to match other TCG sites.
- featCollectionQuantities on shared lists: shared lists now show how many of each card you want or have on offer.
- fixCollectionLive collection value: total value and unpriced count update right away when you add, move, or remove cards, instead of staying stale until refresh.
- fixDecksZone-switch filter clearing: switching to the legend, runes, or battlefield zone now clears the energy, might, and power filters so cards stop disappearing.
- fixGroupsMember list thumbnails: card thumbnails on a group member's shared list show the art again instead of empty placeholder boxes.
- fixAppiOS Safari CSRF error page: the app no longer shows an error page on some iOS Safari setups (older versions, in-app browsers, privacy proxies) that strip the headers used for CSRF protection.
- featGroupsFriend groups go live: create or join a small group from the avatar menu, share your buy or sell lists, and see live matches of who has the cards you want and who wants yours.
- featCollectionQuick-add in add mode: the quick-add keyboard palette now opens in a collection's add mode too, so the same flow works whichever mode the collection is in.
- fixAppNo iPhone zoom on search: card search inputs in the quick-add palette and the deck and collection import flows no longer zoom the page on iPhone when you tap in.
- featCollectionBuy, Sell, Organize lists: new sidebar lists where each tracks cards, printings, or specific copies (you pick at creation) and any list can be shared with a public link.
- featDecksEditable deck descriptions: decks gain an editable description shown above the overview, with Markdown support for links, lists, bold, italics, and inline code.
- featCollectionList quantities and steppers: card and printing lists track quantities, so dropping the same card twice adds another and each tile and row gets a +/- stepper (copy lists stay singular).
- featCollectionImport and export card lists: export a card list as plain text (one "quantity card name" per line) and import the same format, so you can move a list between tools without retyping.
- featCollectionBrowse catalog mode for lists: card and printing lists gain a "Browse catalog" mode with a +/- stepper on every card, so you can build a list without leaving the page.
- featDecksCard details in deck views: clicking a card in the deck overview or editor sidebar opens its details in a side panel, including on shared deck links.
- featDecksCustom - Region deck rules: these decks now allow a Signature for any Champion in your region, allow 1 to 3 Battlefield cards instead of exactly 3, and no longer pre-filter by your Legend's domains.
- fixDecksFaster deck opening: opening a deck is noticeably faster, with first paint roughly two seconds quicker on a cold load.
- fixAppStale tab refresh: a tab left idle during a release update now refreshes itself when you return to it, so you don't click through a stale page.
- featCollectionShare collections publicly: collections can now be shared with a public link so anyone can browse, filter, sort, and see the total value without signing in.
- featCollectionShare trade lists publicly: trade lists can now be shared with a public link so anyone with it can see what you're offering without signing in.
- featCardsMulti-select Owned filter: the Owned filter is now a multi-select with four buckets (None, Partial Playset, Full Playset, More than Full) you can combine.
- featDecksCustom format details in deck list: the deck list shows each custom-format deck's picked tags (like "Bandle City + Neutral") and labels the badge with the real format name.
- featDecksCustom - Region deck format: pick one or more regions and build a deck where every card carries at least one chosen region tag, keeping Constructed copy and zone rules but dropping domain restrictions.
- fixCollectionDrag during auto-scroll: dragging a card onto a sidebar collection no longer breaks when the page auto-scrolls, keeping the preview under your cursor and dropping on the right collection.
- featDecksFreeform decks unrestricted: freeform decks drop constructed limits, allowing multiple legends and champions, 4+ battlefields, 4+ copies across zones, and any number of runes. Autofill and rebalance now apply only to constructed decks.
- featDecksSwitch deck format from editor: the deck editor's 3-dot menu gains a Change to freeform / Change to constructed action, matching the deck list menu.
- featDecksCustom Tags filter for freeform: the freeform deck builder gains a Custom Tags filter to narrow the card list by curated tags (like region) when building themed decks.
- fixAppOne-shot reload on crash: a rare crash that left the page blank now triggers a single reload, so you don't have to refresh by hand.
- featDecksTable view matches the grid in the deck builder: each card shows its in-deck count, Shift+click previews bulk add or remove, the + button disables when a zone is full, and legend rows show Choose, Switch, and Remove labels.
- featDecksDrag champions to the chosen slot: move a champion in and out of the chosen-champion slot, including dragging one straight from the main deck, sideboard, or overflow to replace whoever is there.
- fixCollectionPer-collection owned counts: a card's owned count on a collection page now reflects copies in that collection, with the all-collections total in parentheses when it differs.
- fixCollectionFilters kept when switching collections: changing collection in the sidebar now keeps your active filters instead of clearing them every time.
- fixCardsCards page stays put while you filter: the page no longer remounts on every filter, slider, sort, or keystroke, so typing on a slow connection no longer drops focus mid-word.
- featCollectionTable view on collections and deck builder: the toolbar's grid and table toggle now switches layouts on the collection and deck-builder pages too, like it already did on Cards.
- featCollectionAdd mode on the collection page: the collection page now uses the same toolbar toggle as Cards, with cards going into the collection you're viewing.
- featCardsGroup cards by channel, year, or marker: the Cards page group-by dropdown now offers Distribution Channel, Year, and Marker like Promos, with trailing sections for cards that don't match.
- featCardsArrow-key navigation in the table: arrow keys now move through cards on the Cards page table view, scrolling the selected row into view like the grid does.
- featCardsIcons in the table columns: the type and rarity columns on the Cards page table view show icons next to their labels.
- featCardsFull type labels in the table: the table view shows the full type, including supertypes like "Champion Unit", with column widths retuned so longer labels fit.
- featCardsGrid and Table toggle: a new toggle on the Cards page, Promos page, and deck-builder card picker switches between the visual grid and a compact list that fits more cards on screen.
- featCardsMarker and Channel filters on more pages: the Cards page and deck builder's card picker now expose Marker and Channel filters in the More section, so you can drill down to things like Champion-marker printings.
- featCardsFull filter panel on Promos: the Promos page now has the complete filter set, a card name or code search, range sliders for energy, might, and power, and a combined sort and view control.
- featCardsSuggest an image for missing promos: paste a URL on a promo's placeholder to submit it as a one-field GitHub pull request.
- featCollectionOwned counts on Promos: when signed in, see how many copies of each promo you own, with a toolbar toggle to turn it on or off.
- featRulesShow changes on the Rules page: a "Show changes" toggle highlights rules added, changed, or removed since the previous version, with a click-to-expand word-level diff on changed rules.
- featRulesGame terms link to their definitions: italicized terms like Combat or Accelerate now link straight to the section that defines them.
- featCollectionCSV import surfaces problems first: the import preview puts rows needing attention at the top, with cleanly matched cards tucked into a collapsible group below.
- featRulesClickable cross-references in the rules: references like "rule 540", bare numbers like "603.7", and "CR 116" pointers all turn into clickable links.
- featCardsPromos open in a new tab: clicking a card on the Promos page opens its detail in a new tab so you keep your place.
- featCardsOne language at a time on Promos: the Promos page shows a single language with a dropdown to switch, and the URL reflects it so each is linkable.
- featRulesCopy a direct link to any rule: click a rule number to copy a direct link to that exact rule and share it.
- featRulesLive rules search with context: searching updates as you type and shows each match with its enclosing section and parent rules.
- featRulesRules section is live: the official Riftbound core rules and tournament rules are now available to everyone, linked from the More menu.
- featCardsLive preview on the Contribute form: the form previews where each field lands on the printed card and fills in the slug as you type the name.
- featCardsContribute page: submit a missing card or suggest a correction, which opens a prefilled pull request against the openrift-data repo for review.
- featCardsBuy links on the standalone card page: the standalone card page now shows Buy on TCGplayer, Cardmarket, and CardTrader links with the latest price for the selected printing.
- featAccountLand on Collections after signup: signing up now takes you to your Collections page with clear next steps instead of the public card catalog.
- fixAccountLand where you intended after verifying email: after verifying your email you land on the page you were headed for and are signed in right away, instead of being dropped on the catalog and needing a refresh.
- fixCardsEnergy icons render at every value: energy cost icons in card text now show for any value, including the 6 and 7 on Master Yi and Jayce, instead of a broken-image placeholder.
- featCardsOne tile per card: the cards page and your collections now group printings of the same card under a single tile by default, with a profile setting to go back to one tile per printing.
- featCardsFilter counts that update: filter badges on the cards page show how many cards each option matches under your other active filters, and dim options that would leave zero results.
- fixCardsCards from a fresh visit match: the first row shown before the page finishes loading now reflects your active search and shows one English tile per card, instead of flashing other-language cards and jumping as the grid loads.
- fixDecksDrop maxed-out cards back: you can now return a card already at the 3-copy limit to its original zone or move it between main, sideboard, and overflow, instead of being forced to discard it.
- fixCardsFaster image loading: the card grid, decklist tiles, pack-opener cards, and thumbnails now pick a right-sized image for each slot, and phones skip the hover-only stacked images, so everything loads quicker.
- featDecksImport and replace deck cards: paste a deck code or list to overwrite the current deck in place, keeping its name and format, instead of only importing as a new deck.
- featDecksNew decks page toolbar: the decks page gains search by name, legend, or champion, sorting, filtering by format, validity, and domain, grouping options, and a compact list view.
- featDecksPin and archive decks: keep frequently-used decks at the top and tuck retired decks behind a toggle without deleting them.
- fixAppFaster homepage and cards page: the homepage now fetches only what it shows instead of the full catalog, and the cards page shows its first row instantly on a fresh visit.
- featCardsIncomplete filter on cards: the Owned filter gains an "Incomplete" state for cards where you don't yet own a full deck-legal playset, cycling Owned, Missing, Incomplete, off.
- featCollectionExclude collections from deck building: each collection has an "available for deck building" toggle so display copies or lent-out cards are skipped when counting what you own.
- featDecksUnique keyword enforced: the deck builder now flags any [Unique] card you've added more than once across the main deck or sideboard.
- featPacksRealistic token slot: the pack opener's token slot now reflects real packs: usually a basic Rune, occasionally foil or alt-art, and sometimes a Token card like Sprite or Recruit.
- fixPacksNo duplicate cards in a pack: a simulated booster no longer contains the same printing twice, so the two rare-or-better slots are always different cards.
- fixCardsHover outline during tilt: the hover outline on card tiles is no longer cut off at the corners while the 3D tilt effect is active.
- fixAccountSign-out clears preferences: signing out now fully clears saved display preferences, so the next person on this browser starts with defaults.
- featCollectionOne toast per batch add: adding a burst of cards in add mode now shows a single summary toast per batch (like "Added 5 cards") instead of one per click.
- featCardsCardTrader Zero headline price: CardTrader prices now lead with the cheapest CardTrader Zero (hub-fulfilled) seller you can actually order through, falling back to the overall low when no Zero seller exists.
- featDecksFaster shared deck pages: shared deck pages show the full deck and thumbnails on first paint instead of a skeleton, with the name and copy button kept in view, and repeat opens served from the edge cache.
- featDecksBuild cost for logged-out viewers: logged-out viewers of a shared deck now see its estimated build cost with a "View prices" breakdown, and a sign-in prompt that returns them to the same deck.
- fixCollectionCollection shows every language: your collection now shows every card you own regardless of language, with a Language filter to narrow it yourself.
- featDecksShare decks by link: generate a link friends can view without an account and copy into their own decks in a click, with the same large hover preview and, for signed-in viewers, ownership and value tiles.
- featPacksPack opener simulator: open virtual Riftbound boosters at the real published pull rates, flip cards one at a time or crack a whole display at once, and see the rarity breakdown, average value, and best pulls.
- featCardsPreview and Banned ribbons: previewed-but-unreleased cards carry a "Preview" ribbon and banned cards carry a red "Banned" ribbon everywhere they appear, not just in the deck builder.
- featCardsPrintings view by default: the cards browser and collections now open to the Printings view so each finish shows as its own tile, with a toolbar toggle and a permanent default in Display settings.
- featCollectionStarter Binder collection: new accounts begin with a Binder alongside the Inbox, so you have somewhere to sort cards from your first booster.
- featCollectionPlus/minus on owned cards: add or remove copies of your own cards in a collection without switching into add mode.
- featCollectionVariant-aware remove: clicking minus on a card with copies of several printings lets you pick which printing to remove (in both browse and add mode), instead of silently taking from the displayed one.
- featDecksPhone deck builder gestures: tap a card to add it to the active zone, long-press to open its detail view.
- featCollectionSingle-copy drag between collections: dragging a stack moves one copy by default, Shift moves the whole stack, matching the deckbuilder.
- featCardsPromos page event hierarchy: events are grouped into a collapsible tree with rolled-up counts and a sticky sidebar, so you can jump straight to any language, channel, or product.
- featCardsDistribution notes on card pages: printings show their markers, channel breadcrumb, descriptions, and editor's note in one block, with a hover info icon by the rarity.
- featCardsCard detail share button: share or copy a link to the exact printing you're viewing, which unfurls with matching art and text on Discord, Slack, and social sites.
- featAppPinned page top bar: the back button, title, and actions stay under the global header as you scroll, keeping controls always in reach.
- fixCollectionConsistent owned count: the owned count above each card stays the same when you switch between browse and add mode instead of jumping to the all-collections total.
- featCardsMarketplace prices clarified: your favorite marketplace stands out and drives the per-row price, with affiliate links noted and the profile setting explaining each market's trade-offs.
- featDecksDeck zone tiles clarified: empty zones show a clickable dashed button with a hint, the edit pencil stays visible, and brand-new constructed decks show a muted badge instead of an amber warning.
- fixDecksExport deck dialog fixes: proxies export uses the printings shown in the deck instead of stray Chinese cards, the dialog scrolls inside itself on iPhone, and switching tabs no longer collapses it.
- featDecksPin a printing per deck row: right-click to pin a preferred printing so different finishes of a card show as separate entries, and Piltover deck codes round-trip your variant choices.
- featDecksDrag between zones from overview: drag cards between zones straight from the deck overview without opening each zone first.
- featDecksRicher deck overview: each zone shows its full card list with larger thumbnails grouped by type, plus a KPI strip and separate Energy, Power, and Types charts.
- featCardsPromo page by language: the Promo Cards page groups by language first, then by promo type within each.
- fixCollectionSelect mode clears on switch: switching collections while in select mode exits select mode and clears the selection instead of carrying invisible selections.
- fixCollectionDeleted collection cards visible: deleting a collection moves its cards into the Inbox visibly instead of having them seem to disappear until reload.
- fixCardsCard link scrolls to card: clicking a card link scrolls the grid to that card instead of opening the detail pane with the grid at the top.
- featDecksDeck dashboard: opening a deck shows each zone's progress, card previews, and deck-wide stats instead of a blank "pick a zone" page.
- fixDecksReliable last deck edit: your last edit before navigating away now saves reliably instead of sometimes being dropped mid-save.
- fixCollectionOffline action feedback: if your connection drops mid-action, it reverts and shows an error toast instead of silently looking like it worked.
- featAppFaster loading: the card browser, collections, and decks load faster when signed in, and public pages load noticeably faster for signed-out visitors.
- featCardsDistribution on card detail: the card detail page shows where each printing was distributed (tournaments, prerelease events, etc.) so you know how to find a copy.
- featCardsStacked stamps as own printing: a printing can carry multiple stamps at once, and the stack is treated as its own distinct printing with its own price.
- featCardsPromos grouped by event: the Promo Cards page groups by distribution event, so a card given out at several tournaments shows under each one.
- fixCardsMulti-filter card browser: the card browser no longer errors when you have multiple languages or other filters selected in the URL.
- fixCardsFast search field: the card browser search no longer drops or scrambles letters when you type quickly.
- featCardsPromo page languages: the Promo Cards page shows all printings, including multiple languages of one card, with a language filter to narrow the view.
- featAppNew landing page: the landing page uses real card art, explains what OpenRift is, and groups sign up, browse, and sign in with three feature blocks.
- fixCardsWorking language filter: the language filter now actually hides printings outside your selected languages and defaults to your preferences.
- fixAccountInstant account UI updates: signing out and changing your display name, email, or account now update the UI immediately instead of needing a refresh.
- featCardsPromo Cards page: a new page shows all promotional printings grouped by promo type, each type carrying an optional description.
- featCollectionCSV imports: import collections from RiftMana exports, and Piltover Archive imports now use the Language column so English imports no longer collide with Chinese or French.
- featCollectionOwned cards dimmed: cards you don't own are dimmed when showing owned counts or in add mode, making collection gaps easy to spot.
- featCollectionCost to Complete chart: a new Statistics chart shows what you'd spend to reach 100%, cheapest cards first, so you can see where diminishing returns kick in.
- fixCollectionReliable bulk loading: collections with many cards added at once no longer risk skipping some when your collection loads.
- featCollectionStatistics page: a new page shows completion, estimated value, domain and rarity breakdowns, and energy/power curves, with completion rows linking to your missing cards.
- featCardsOwned/Missing filter: the card browser can show only cards you own or only those you still need.
- featCardsRarity colors: rarities have their own colors throughout the UI wherever rarity appears.
- fixCollectionSelecting all printings: in Cards view, selecting a card stack now selects every printing's copies, not just the displayed one.
- fixCollectionLive disposal updates: disposing or moving cards removes them from the view immediately instead of needing a reload.
- fixCardsCard link previews work: sharing a card page on Telegram, WhatsApp, or Discord now shows the preview, using English art and a clean description instead of leaking unrendered icon shortcodes.
- featCardsCardmarket on Chinese printings: Cardmarket prices now show on Chinese printings (marked with a star, since Cardmarket publishes one price across all languages), and clicking through opens it pre-filtered to your language.
- featCardsCardTrader for Chinese cards: Chinese printings now show CardTrader prices and price history, so you can track their value like English ones.
- fixCardsSet page language: set pages now show cards in your preferred language instead of randomly mixing printings.
- fixCardsPrice filter respects marketplace: filtering by price uses your selected marketplace instead of always TCGplayer, with the slider and badges showing the right currency.
- featDecksDeck ownership panel: the deck editor sidebar shows how many cards you own, how many are missing, and the cost to complete, with a missing-cards dialog and copy-to-clipboard shopping list.
- featCardsCollection mode on the cards page: a button cycles through owned counts and quick-add controls, and Ctrl+K adds cards straight to your Inbox.
- featAppServer-side rendering: pages load faster on first visit, navigation is smoother, and the site shows up better in search engines.
- featDecksSignature card validation: the deck builder now caps Signatures at 3 and requires they match the Legend's Champion tag.
- featAppEasier-to-find Discord and feedback: a header Feedback button reaches Discord or opens a GitHub issue, Discord links appear across the app, and the server gets a daily changelog digest and new-printing alerts.
- fixCardsInstant count updates on cards: adding or removing cards on the cards page updates the count right away instead of after a delay.
- featAccountReorderable languages: reorder languages in preferences, and the first one is preferred when choosing which printing to show.
- featCardsDedicated card pages: every card has its own page at /cards/{name} with full details and a shareable link, visible to search engines with prices and breadcrumbs in Google results.
- featCardsBrowsable set pages: sets have their own pages at /sets and /sets/{name} showing every card in a responsive image grid instead of a plain list.
- featAppRich link previews: sharing a link on social media, Discord, or Slack now shows a preview with title, description, and image.
- featCollectionRe-import your own exports: OpenRift CSV exports import back in cleanly, now with a Promo column so promo variants come back unambiguous.
- fixCollectionBulk edits over 500 cards: deleting or moving more than 500 cards at once works again.
- featDecksOfficial tournament registration PDF: the registration PDF matches the official Piltover Archive format and lets you fill in your name, Riot ID, and event details first.
- featDecksRename and reformat from the deck list: rename a deck or change its format without opening it.
- featCardsErrata shown by default: cards with errata show the corrected text, with the original behind a disclosure.
- fixDecksCorrect zones on text import: importing a header-less text deck puts legends, runes, battlefields, and the first champion in their proper zones.
- fixDecksCorrect deck export variants: export uses the proper base variant instead of alt-art versions, and no longer duplicates the chosen champion when importing a deck code.
- featDecksThree deck import/export formats: import and export via Deck Code, Text, and TTS, plus printable tournament registration and proxy PDFs from the deck overview.
- featCardsSearch every field by default: one search checks name, text, keywords, tags, artist, flavor, type, and ID, with an "All" toggle and new f: and ty: shortcuts.
- featDecksSwitch filled deck slots: a "Switch" button swaps a filled Legend, Champion, or Battlefield without removing it first.
- featDecksProxy PDF export: print any deck as proxies with card images or text placeholders, plus optional cut lines and a watermark.
- featDecksVisual deck overview: the overview shows a card grid with legend and champion art, domain icons, a type breakdown, and validity badges.
- featDecksGuided deck building: build a deck step by step with full browser integration, drag and drop between zones (Shift to move all), and Piltover Archive deck codes for import/export.
- featDecksLive deck stats: a panel shows domain distribution plus energy, power, and card-type curves with stacked main/sideboard bars.
- featDecksDeck list at a glance: each deck shows its domain colors, card count, and Standard validity.
- featCardsMulti-language printings: see English, French, and Chinese printings, with your preferences picking which appear (English only by default).
- featCollectionFull collection search and filters: search and filter collections by name, type, rarity, and more without add mode, plus CSV export of any collection.
- featCardsGroup cards your way: group by set, type, supertype, domain, rarity, or art variant from a new Sort & Group popover.
- featCollectionCollection market value: each collection shows its total value for your preferred platform and flags unpriced cards.
- featCollectionDrag and drop to collections: drag cards onto a sidebar collection to move them, with multi-select supported.
- featCardsBanned card badges: banned cards show a red "Banned" badge in the grid and a reason banner in detail.
- featCollectionImport collections from other apps: bring in your collection from Piltover Archive or RiftCore via CSV, previewing matches and resolving ambiguous printings.
- featCollectionActivity timeline: a new Activity page shows everything you've added, removed, or moved, grouped by day and filterable by action, collection, or date range.
- fixAccountLogin without a refresh: protected pages like Profile open right after signing in, no reload needed.
- featCollectionInline browse & add: open the full card browser inside the collection page, sidebar still showing which collection you're adding to.
- featCollectionQuick-add palette: press ⌘K in any collection to find a card by name and add it without leaving the page.
- featCardsChoose your marketplaces: pick which marketplaces show and in what order, the first appearing on grid thumbnails.
- featCardsRich placeholders for imageless cards: cards without images now show a full text stand-in with type, tags, rules, effect, and flavor.
- featAppDisplay preferences sync across devices: theme, card images, rich effects, and visible fields follow you between devices when signed in.
- featAppDatabase size on the landing page: the landing page shows how many cards and printings are in the database.
- featCardsCardTrader prices: CardTrader prices now appear alongside TCGPlayer and Cardmarket on card detail pages.
- fixCardsNo false text-mismatch warning: the "printed text differs" warning stays hidden when the text actually matches.
- featCardsFaster price loading: price data loads quicker thanks to browser caching.
- featAppFriendly route error page: route errors now show a helpful fallback instead of a blank screen.
- fixAppOpen the logo in a new tab: middle-clicking or ctrl-clicking the logo opens the home page in a new tab, like other nav links.
- featAppLanding page: OpenRift now has a landing page at / with sign-in and a quick link to browse cards (plus a hidden easter egg).
- fixAppAutomatic updates: updates now install on their own, fixing a crash loop where stale cached code hid the update prompt.
- featAppLegal and privacy pages: legal notice and privacy policy pages are now reachable from the footer.
- fixCardsConsistent card heights: cards render at the same height across browsers, fixing a Safari and WebKit layout issue.
- featAppStreamlined menu and settings: the profile menu now holds dark mode, what's new, and updates, and card display settings live in the card browser.
- featAppEasier-to-find updates: an "Update" badge marks "What's new", and you can check for updates inside the changelog panel.
- featAppSticky changelog dates: date headers stick as you scroll with relative labels like "Today" or "3 days ago".
- featCardsFoil shimmer on stacks: stacked cards in the grid now show a foil shimmer effect.
- fixCardsFanned sibling clicks: clicking a fanned sibling card now opens its detail pane correctly.
- fixCardsSelected card stays in view: it no longer scrolls off when the grid resizes as the detail pane opens.
- featCardsMobile controls in the filter drawer: sort, view, and column controls move into the filter drawer on mobile.
- fixAccountGoogle sign-in redirect: signing in with Google no longer lands on a "Not Found" page on the way back.
- fixAccountEmail carries to password reset: the email you typed follows you to "Forgot your password?" and back.
- fixAccountSignup with a slow mail server: signing up no longer hangs when the mail server is slow to respond.
- featCardsCardmarket price badge: Cardmarket prices now show as a badge in the detail view and version list.
- featAccountPlayful reset placeholder: the reset password page shows a random funny email placeholder.
- fixAccountResend verification for unverified emails: signing up again with an unverified email re-sends the verification code.
- featCardsPrice history charts: see how a card's price has changed over time, with a trend sparkline in the detail sidebar.
- featCardsStacked printings view: the browser groups printings of one card into a single tile with a price range, plus a "Printings" view for every version.
- featCardsCardmarket prices and daily refresh: Cardmarket prices appear alongside TCGplayer, with all prices refreshing daily.
- featCardsVersions section on card detail: switch between finishes, art variants, and other versions, with a note when the printed text differs.
- featAccountSign in with Google or Discord: sign in with Google or Discord, and link or unlink them from your profile.
- featAccountAccount and profile management: change your email, password, or delete your account, with email and password resets handled by a secure 6-digit code.
- featAccountGravatar profile picture: your Gravatar now appears in the header and on the profile page.
- featCardsSigned and Promo filters: filter cards by Signed and Promo status with three-state toggles.
- featAccountEmail verification on signup: new accounts must verify their email before signing in, keeping fake signups out.
- featAccountRedesigned login and signup: the login and signup pages get a fresh look with inline form validation.
- fixCardsFoil tilt toggle on mobile: tapping a foil card now turns the tilt effect back off instead of staying stuck on.
- fixCardsScrollbar drag off-screen: sliding past the screen edge now ends the drag cleanly instead of freezing on a wrong card number.
- fixCardsScrollbar handle text wrapping: the handle label no longer breaks onto multiple lines while dragging on mobile.
- featAccountEmail sign-up and sign-in: create an email and password account and manage it on a profile page where you can change your display name.
- featCardsPersistent filter sidebar: on wide screens (1600px+) filters live in an always-visible sidebar instead of a panel.
- featCardsDatabase-backed card data: cards are now served from a real database instead of static files, with no loss in speed.
- featCardsColor-coded prices: prices are tinted by value (grey for bulk, green for $1 to $10, amber for $10 to $50, rose for $50+) and always show normal or foil.
- featCardsRedesigned card detail: a fresh layout with distinct panels for descriptions and effects (tinted in the card's domain color), inline keyword styling, and compact pricing chips.
- featCardsTap to toggle foil: tap the card image in the detail view to switch the holographic foil effect on or off.
- featCardsHolographic foil cards: cards shimmer with a holographic foil effect on hover or phone tilt, and TCGPlayer prices now show on cards.
- featCardsBrowse cards by swipe and arrow keys: swipe on mobile or use arrow keys to step between cards without closing the detail view.
- featCardsQuick-jump scroll indicator: a draggable scroll indicator lets you jump between sets, opt-in via settings.
- featAppWorks offline and installable: the app works offline and can be installed to your home screen.
- featCardsGrouped by set: cards are grouped by set with the name staying visible as you scroll, and tapping a header jumps to that set's start.
- featCardsCard detail sidebar: tap any card to open its details, with real images (toggle to landscape) plus rarity, type, and domain icons in domain colors.
- featCardsSearch and filter cards: search across name, type, and text with scope chips, and filter by version (Normal, Alt Art, Overnumbered) or ID.