> For the complete documentation index, see [llms.txt](https://swu-forge.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://swu-forge.gitbook.io/docs/cards-and-search/searching-cards.md).

# Browsing & Searching Cards

The **Browse** page (`/search`) is your main hub for discovering cards. It combines powerful search with manual filters to help you find exactly what you're looking for.

## Search Bar

At the top of the page you'll find the search bar with two key controls:

### Format Toggle

The button on the left side of the search bar switches between **Premier** and **Eternal** formats:

* **Premier** (blue) — Shows cards from the current competitive rotation
* **Eternal** (purple) — Shows cards from all released sets

The format toggle controls which **card pool** you search and browse. This is separate from a deck's format — each deck has its own format property (visible as a badge next to the deck name) that you can change on the [deck detail page](/docs/decks/managing-decks.md). You can search the Eternal card pool while building a Premier deck, or vice versa.

Your format selection **persists across pages** — switching to Eternal on `/search` keeps it active when you navigate to `/workshop`, and vice versa. The preference is stored in your browser session. When you load or import a deck, the search format automatically syncs to match the deck's format.

#### Automatic Eternal Fallback

If you search in **Premier** mode and no results are found, the app automatically retries with **Eternal**. When this happens:

* The format toggle switches to Eternal and briefly **pulses** to draw your attention
* A warning message appears below the search bar explaining that results are only available in Eternal format
* Toggling the format manually clears the warning

This also applies to searches originating from the homepage — however, since the homepage has no format toggle, the fallback happens silently without a warning.

![Screenshot: Format toggle on search bar](https://cdn.swuforge.com/how-tos/premier.png) ![Screenshot: Format toggle on search bar](https://cdn.swuforge.com/how-tos/eternal.png)

### Search Mode

The search bar supports two modes: **Syntax Search** and **Plain Language Search**.

* **Syntax Search** — Free for all users. Uses structured filter expressions like `trait(rebel) cost(3) type(unit)` to find cards. See the [Syntax Search Reference](/docs/cards-and-search/searching-cards/search-syntax.md) for all available filters and examples.
* **Plain Language Search** — Requires a **Foundry Apprentice** subscription or above. Describe what you want in your own words and the search interprets your intent. Plain Language Search from the **home page** works for everyone — even without signing in. See [Getting Started](/docs/getting-started.md) for details on subscription tiers.

On **desktop**, the search button includes a **dropdown** that lets you switch between Syntax Search and Plain Language Search directly from the search bar. On **mobile**, the search mode is configured from the [Settings](/docs/account/settings.md) page.

Your selected search mode persists across sessions.

### Syntax Search

With Syntax Search active, type filter expressions into the search bar. Filters use the format `filterName(value)` and can be combined freely:

* `aspect(red) type(unit) cost(<=3)` — Aggression units costing 3 or less
* `trait(jedi) keyword(sentinel)` — Jedi cards with Sentinel
* `luke type(unit)` — Unit cards with "luke" in the name (free text searches card names)

If your query contains invalid syntax, the search input shows a **red border** and an error message appears below with details (e.g., unknown filter values with suggestions for close matches).

Click the **?** button next to the search bar for a quick reference popup of all available filters. For the full reference, see the [Syntax Search Reference](/docs/cards-and-search/searching-cards/search-syntax.md).

### Plain Language Search

With Plain Language Search active, describe what you want and hit **Search** or press **Enter**. Some examples:

* `"2 cost rebels"` — finds 2-cost cards with the Rebel trait
* `"units with Sentinel"` — finds Unit cards that have the Sentinel keyword
* `"legendaries with indirect damage"` — finds Legendary rarity cards with indirect damage abilities
* `"assign toughness"` — "toughness" is another word for **health** (the second number in a power/health stat line), so this finds cards that raise or lower a unit's health via a `+X/+Y` buff or `-X/-Y` debuff

The search works in three stages:

1. **Single-word queries** match card names instantly
2. **Multi-word queries** first try matching card titles
3. If no title matches, the query is interpreted by **Plain Language Search**, which returns matching cards based on what you described

#### Deck-Building Questions Aren't Supported (Yet)

Plain Language Search finds and filters cards by their **properties** — aspects, traits, keywords, types, stats, card text, and names. It is **not** a deck-building advisor, so it can't recommend cards or tell you what's "good" with a particular leader or deck.

If you ask something like:

* `"what cards are good for my Chewbacca deck"`
* `"good cards with Tobias Beckett"`
* `"recommend cards for this deck"`
* `"cards for Vader"` / `"upgrades for Luke"`

…the search recognizes it as a deck-building request and shows a **notice** explaining that this style of query isn't supported yet, rather than returning random results. A dedicated deck-building assistant is planned for a future release.

This only applies when you ask for what's **good** or for **recommendations**. Pairing a card name with a card type — e.g. `"vader leader"`, `"luke unit"`, or `"chewbacca base"` — is a normal lookup that returns the named cards of that type, not a deck-building request.

To search for cards instead, describe the properties you want — e.g. `"cheap aggression units"`, `"removal in red"`, or `"cards that reference Luke"` (which returns cards that name Luke in their text or title, like Luke Skywalker's Lightsaber).

Similarly, **pasting a full decklist** (a Melee or SWUDB text export) into the search bar shows a notice pointing you to deck import — the search bar finds individual cards, it doesn't load decks. To import a deck, go to **My Decks** and choose **New Deck → Import** (see [Managing Decks](/docs/decks/managing-decks.md)).

#### Power / Health Stat Search

SWU prints unit stats as **power/HP**, so typing a slash-separated pair of numbers searches by those stats directly:

* `"2/4"` — units with 2 power and 4 health
* `"3/1"` — units with 3 power and 1 health
* `"10/12"` — handles two-digit stats too

This runs locally — no Plain Language Search required, so it works on the free tier. The result is a Power and HP filter you can see (and tweak) in the [filter chips](#filter-chips).

#### Finding Alternatives

Looking for cards similar to one you already know? Use any of these phrasings:

* `"alternatives to Cassian Andor"`
* `"similar to Luke Skywalker"`
* `"cards like Krennic"`
* `"instead of Vader"`
* `"replacements for Han Solo"`

The search analyzes the named card's **type, cost, power, HP, and aspects**, then returns cards of the same type with similar stats (within ±1) that share at least one aspect. This runs locally — no Plain Language Search required, so it works on the free tier too.

#### Pre-Constructed Decks

Want to see every card in a Twin Suns pre-constructed deck? Name the deck along with a precon keyword (`precon`, `preconstructed`, `pre-con`, `starter deck`):

* `"show me all cards in the Blood Brothers precon"`
* `"Aggressive Negotiations preconstructed deck"`
* `"Master and Apprentice starter deck"`
* `"Against the Odds precon"`

You can also identify a precon by its **leaders** instead of the deck name — minor misspellings are tolerated:

* `"ahsoka/captain rex ts26 precon"`
* `"dooku and ventress precon"`

The results include the deck's leaders, base, and full 50-card list, and the format automatically switches to **Eternal** so the Twin Suns cards aren't filtered out. This runs locally and works on the free tier too.

> The precon keyword is required on purpose: a bare deck name like `aggressive negotiations` keeps returning the matching **card** (which shares that name), not the deck.

> Plain Language Search on the Browse and Workshop pages requires a **Foundry Apprentice** subscription or above. However, Plain Language Search from the **home page** works for everyone — even without signing in. See [Getting Started](/docs/getting-started.md) for details on subscription tiers.

![Screenshot: Search results for a plain language query](https://cdn.swuforge.com/how-tos/nl-search.png)

### Previous Searches

When you focus the search input, a dropdown appears showing your **previous searches** — up to 10 recent queries sorted by most recent. As you type, the list filters to show only matching entries.

Previous searches are **deck-aware**:

* **With a deck loaded** — Shows searches you made while editing that specific deck
* **Without a deck** — Shows searches from across all your decks, with each entry displaying the deck name and aspect colors so you can see which deck context it came from

Click a suggestion or use arrow keys + Enter to re-run the search. Press Escape to dismiss the dropdown.

Previous searches are saved automatically — up to 20 per deck are stored. Repeating a search bumps it to the top of the list.

### Clearing Search

Click the **X** button in the search bar to clear your query and return to browsing all cards.

## Manual Filters

Below the search bar, you'll find filter dropdowns that let you narrow results precisely. These work alongside search results — apply filters to refine what the search returned, or use them on their own to browse.

On **mobile**, filters are accessed via a **Filters** button that opens a slide-out panel from the left. All filter values are displayed as tappable chip buttons for easier selection on smaller screens. A **New Deck** button sits beside the Filters button.

![Screenshot: Manual filter bar](https://cdn.swuforge.com/how-tos/manual-filters-4.png) ![Screenshot: Manual filter bar](https://cdn.swuforge.com/how-tos/manual-filters-5.png)

Mobile: ![Screenshot: Manual filter bar mobile](https://cdn.swuforge.com/how-tos/manual-filters-3.gif)

### Sets

Select which card sets to include. Quick-select buttons let you choose **Premier** or **Eternal** format pools in one click, or pick individual sets with checkboxes.

### Type

Filter by card type: **Unit**, **Event**, **Upgrade**, **Leader**, **Base**, or **Token**. Select multiple types to see all of them (OR logic).

> **Note:** While you're building a deck, the slots you've already filled drop out of the results — once your deck has a Leader, Leaders stop appearing, and once it has a Base, Bases stop appearing — so the list stays focused on cards you can still add. Each type is handled independently, so a deck with a Leader but no Base still shows Bases. To see a filled type anyway, explicitly select **Leader** or **Base** in the Type filter. They also appear in Plain Language Search results when relevant. With no deck active, both always show.

### Quick Filters (Card Type Macros)

If you select the **Card Type Macros** filter layout in [Settings](/docs/account/settings.md), the Type and Arena dropdowns are replaced with quick-filter buttons: **Space**, **Ground**, **Events**, and **Upgrades**. These act as radio buttons — click one to filter, click it again to clear. A reduced **Type** dropdown with only **Leader** and **Base** remains available alongside the quick filters.

In the **Workshop**, the Card Type Macros layout is even more streamlined — the Sets, Type, and Arena dropdowns are all hidden (format is shown in the search input badge). Only the quick filter buttons and a full aspect filter row (with Must Have, Any Of, and Not modes) remain.

### Arena

Filter by arena: **Ground** or **Space**.

### Cost

Two ways to filter by cost:

* **Quick chips** — Click the numbered buttons (0–9) to toggle specific costs. The "9" chip includes 9 and above.
* **Expression** — Type an expression like `>= 3`, `< 5`, or `= 2` in the text field. Suggestions appear as you type.

![Screenshot: Cost filter with chips and expression](https://cdn.swuforge.com/how-tos/cost.png)

### Aspects

Filter by card aspects (Vigilance, Command, Aggression, Cunning, Heroism, Villainy) with four matching modes:

* **Deck** — Automatically available when your deck has a Leader and Base. Shows only cards playable without an aspect penalty based on your leader and base's aspects.
* **Must have (AND)** — Shows cards that have *all* of the selected aspects
* **Any of (OR)** — Shows cards that have *at least one* of the selected aspects
* **Not (Exclude)** — Hides cards that have *any* of the selected aspects

![Screenshot: Aspect filter with mode selector](https://cdn.swuforge.com/how-tos/aspects-2.png)

### More Filters

Click the **three-dot button** (...) to reveal additional filters:

* **Rarity** — Common, Uncommon, Rare, Legendary, Special (with color indicators)
* **Ability** — Filter by card abilities (When Played, On Attack, When Defeated, Action, etc.)
* **Keyword** — Filter by card keywords (Sentinel, Restore, Ambush, Overwhelm, etc.)
* **Trait** — Searchable list of all card traits (e.g., Rebel, Imperial, Jedi). Type to filter the trait list, then use arrow keys to navigate.

The **Ability**, **Keyword**, and **Trait** dropdowns use a tri-state cycling button. Click an item to cycle through:

1. **Required (AND)** — card must have this value
2. **Optional (OR)** — card must have at least one of the optional values
3. **Exclude (NOT)** — card must not have this value
4. **Off** — back to unselected

You can mix required, optional, and excluded values within a single dropdown. The trigger summary shows counts as `+required / optional / −excluded`.

This section auto-expands if any of these filters are already active.

## Filter Chips

When filters are active, colored chips appear below the filter bar showing exactly what's applied. A **Clear filters** button appears on the right to reset everything at once.

If your results came from Plain Language Search, an explanation of the search interpretation appears alongside the chips.

![Screenshot: Active filter chips with clear button](https://cdn.swuforge.com/how-tos/chips.png)

## View Controls

On the right side of the toolbar:

### Sort

Choose how cards are ordered:

* **Default order** — Standard card numbering
* **Cost: Low to High**
* **Cost: High to Low**

### View Mode

Toggle between two display modes:

* **Expanded** — Card image grid (responsive 2–6 columns)
* **Condensed** — Compact list with card text visible (responsive 1–6 columns)

![Screenshot: Expanded vs condensed view toggle](https://cdn.swuforge.com/how-tos/full-view-mode.png) ![Screenshot: Expanded vs condensed view toggle](https://cdn.swuforge.com/how-tos/small-view-mode.png)

## Card Interactions

### Hover Popover

On desktop, hovering over a card tile for a moment shows a **larger preview** of the card. For Leader cards, the popover shows the front by default — hold **Cmd** or **Alt** to see the deployed (back) side.

### Flip Button

Cards with a back side (Leaders, some special cards) show a **flip button** (↻) on hover. Click it to toggle between front and back.

### Detail Link

Each card has an **eye icon** button that links to the full card detail page.

## Pagination

Cards load in batches of 100. As you scroll down, more cards load automatically. All your filter and search state is preserved if you navigate to a card detail page and come back.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://swu-forge.gitbook.io/docs/cards-and-search/searching-cards.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
