Skip to content

feat: add a Tools menu and an Associated Tools Learn page - #2006

Open
d-callan wants to merge 3 commits into
mainfrom
associated-tools
Open

d-callan wants to merge 3 commits into
mainfrom
associated-tools

Conversation

@d-callan

Copy link
Copy Markdown
Collaborator

adds tools menu w links out to some things sergei built recently, and to logan-search.org .. also adding associated news and learn pages. plus something mypy was complaining about

Add a responsive Tools header menu (dropdown at md/lg, More-menu entry
at sm, drawer link at xs) linking out to the six tools supported by BRC
Analytics: Bushwacker, HyPhy 3 / WALRUS, Logan Search, PrimAeon,
RhizAeon and TRACE-5.0, plus an internal link to the new
/learn/associated-tools page. The page describes each tool, how to
choose between them, and their privacy model.

Reframe /learn/logan-search around logan-search.org rather than the
BRC-hosted UI: drop the in-dev file-load/example/index-matrix/retention
mechanics, and replace the comparison section with one describing the
relationship to BRC Analytics (the API runs kmindex jobs on
usegalaxy.org, and the teams are collaborating on a new UI and the
Logan v1.2 December 2025 index through the TACC partnership).

Add two What's New cards (Logan Search support first, Tools menu
second), an Associated Tools Learn card, and a cross-link from the
PrimAeon page; update the header visibility tests for the new entry.

Also fix a pre-existing mypy arg-type error in check_against_ncbi_gtf's
open_source: types-requests types Response.raw as HTTPResponse | Any,
outside BufferedReader's accepted stream union; the cast documents that
urllib3's response object satisfies the raw-stream protocol.

@NoopDog NoopDog left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting this together. A Tools menu is a nice way to surface these, and the new Associated Tools page reads well. Lint, type checks and the test suites all pass locally. One question and one fix need settling before this can merge, plus a naming question and a few optional points.

Needs an answer or a fix before merge

  1. Was overwriting learn/logan-search.mdx intentional? The description doesn't mention it, so I wanted to check. That page documents BRC Analytics' own Logan Search at /logan-search, which is a separate search UI that's currently behind the NEXT_PUBLIC_LOGAN_SEARCH_ENABLED flag, so it's easy not to notice. The page covers that UI's index matrix and presets, the 50,000-hit cap, TSV/Parquet export, how long results are kept, and how it differs from logan-search.org. The rewrite describes logan-search.org instead, including features BRC's version doesn't have (GenBank/RefSeq search, aligning a hit against contigs, email notification). Two places still link to this page and expect the old content:

    • the "How it works" link on BRC's Logan Search page (sites/brc-analytics/views/LoganSearchView/loganSearchView.tsx:34);
    • the Logan Search Learn card (LearnView/constants.ts:77), which promises "inputs, scores, limits and export".

    If the overwrite wasn't intended, the logan-search.org description would fit well in the new Associated Tools page or a page of its own. If it was, let's talk about what should happen to BRC's own Logan Search page and those two links.

  2. Not every tool is on usegalaxy.org. Inline at associated-tools.mdx:17.

Naming question

  1. Bushwacker vs. Bushwhacker. This PR writes "Bushwacker", matching the tool's URL (bushwacker), but the tool's own site calls it "Bushwhacker" throughout. Could the name be aligned with the URL at the tool's end, so people searching for it find one spelling? (Inline at navigation.ts:61.)

Optional

  1. The navigation comment about the drawer isn't quite right, which may open up a simpler design (inline at navigation.ts:36).
  2. The updated test checks the "Tools" labels but not where they point. Emptying the menu, blanking the xs link's URL, or pointing the "More" entry at the wrong page all still pass. Consider asserting that the sm and xs entries go to /learn/associated-tools, and that the md/lg menu lists the six tool URLs plus the Learn page.
  3. With the Logan Search flag on, the header shows two "Logan Search" entries: the top-level one goes to BRC's /logan-search, and the Tools one goes to logan-search.org. Consider labelling the Tools entry so the two are distinguishable, for example "logan-search.org".
  4. The mypy cast is unrelated to the menu (inline).
  5. The Learn card leaves out one of the tools (inline).

It would also help to mention the Logan Search page change in the description, since the description becomes the commit message.

text: "Logan Search"
contentType: "ARTICLE"
description: "Search a DNA sequence against Logan's assemblies of the Sequence Read Archive and get back the SRA runs it occurs in: inputs, limits, scores, export and retention."
description: "Search a DNA sequence against Logan's assemblies of the Sequence Read Archive and get back the SRA runs it occurs in: inputs, limits, scores and results."

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was this overwrite intended? This page is the documentation for BRC Analytics' own Logan Search (/logan-search, behind the NEXT_PUBLIC_LOGAN_SEARCH_ENABLED flag), and BRC's Logan Search page and its Learn card both link here. More detail is in the review summary.

## Relationship to BRC Analytics

Some things are only on logan-search.org for now: searching GenBank and RefSeq reference genomes, its "Fast" index groups, email notification when a search finishes, and alignment of the query against a run's contigs. If you need one of those, use logan-search.org; the threshold and scores mean the same thing on both.
Logan Search runs on BRC Analytics and Galaxy infrastructure: searches submitted on logan-search.org go through the BRC Analytics API, which runs the kmindex lookups as jobs on usegalaxy.org. The BRC Analytics and Logan teams are also collaborating to bring a new UI to logan-search.org, and — through BRC Analytics' partnership with TACC — to deploy the updated Logan v1.2 index, which covers the December 2025 freeze of the SRA (87 petabases across 38 million accessions).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wherever this paragraph ends up: it puts plans and figures into public copy (the new logan-search.org UI, the TACC partnership, Logan v1.2, "87 petabases across 38 million accessions"). Please make sure the teams involved are happy to have those stated publicly.

/** Associated tools in alphabetical order, opened in a new tab; the last entry is the learn page. */
const TOOLS_MENU_ITEMS: NavLinkItem[] = [
{
label: "Bushwacker",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Naming question: this matches the URL (bushwacker), but the tool's own site spells it "Bushwhacker". Could the tool's name be aligned with its URL, so there's one spelling?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i actual think its the gh url that needs updating

workflows in this catalog. They complement the hosted analysis environment:
every one is web-based, and most run entirely in your browser via WebAssembly,
so your data never leaves your device. They're also available as tools on
usegalaxy.org for users who prefer that, or as local installs for batch and

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Required: a search of usegalaxy.org's and usegalaxy.eu's public tool lists found HyphAeon and ChronAeon on usegalaxy.org and RhizAeon on usegalaxy.eu only. It found nothing for WALRUS, TRACE-5.0 or Bushwacker. Could you name the tools that have Galaxy wrappers, here and in the Privacy section, or drop the claim?

/**
* "Tools" is a dropdown where the header has room for it; at `sm` it collapses
* into "More" with the primary links, and at `xs` the drawer lists it as a
* link, since the drawer renders no menus.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional: findable-ui 60.0.1 does render menus in the drawer (NavigationDrawer) and submenus inside a dropdown (NavigationMenuItems with isSubMenu). So a single "Tools" entry with menuItems might work at every width, letting phone users reach a tool in one tap. Either is fine, but if you keep the link, please correct the comment.

@@ -311,7 +311,7 @@ def open_source(source: str) -> Iterator[io.BufferedIOBase]:
response.raise_for_status()
# urllib3 closes the body at its last byte, but gzip reads once more.
response.raw.auto_close = False

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional: with the types-requests version CI pins, mypy passes on this file without the cast. Consider dropping it here, or moving it to its own PR that names the setup where mypy complains.

StartIcon: InventoryIcon,
href: "/learn/associated-tools",
secondaryText:
"Sequence search, selection analysis, recombination scanning, and transmission surveillance tools supported by BRC Analytics.",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional: this leaves out phylogenetic inference (Bushwacker), which the page itself includes.

@d-callan

Copy link
Copy Markdown
Collaborator Author

If it was, let's talk about what should happen to BRC's own Logan Search page and those two links.

i think eventually our logan search page becomes the new logan-search.org . we can update the leaern page again then w new features or something if needed but i think the canonical place to point to for logan search is and should remain logan-search.org

The tool's own site and the upcoming preprint spell it Bushwhacker;
rename it in the Tools menu, the Associated Tools page, the What's New
card and the PrimAeon cross-link (the veg.github.io/bushwacker URL is
unchanged).

Also bring the Learn cards in line with the rewritten pages: the Logan
Search card no longer promises export, and the Associated Tools card
now mentions phylogenetic inference so all six tools are covered.
@d-callan

Copy link
Copy Markdown
Collaborator Author

Not every tool is on usegalaxy.org. Inline at associated-tools.mdx:17.

they will be, this is happening in parallel

veg.github.io/chronaeon is live, so list it alongside the other tools:
a menu entry (alphabetical, after Bushwhacker), a table row and
Choosing-a-tool bullet on the learn page, and mentions in the What's
New card, the Learn card and the PrimAeon cross-link.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants