Repository navigation
feat: modernise the catalogue UI with advanced search, filters and motion - #122
Conversation
…ntrols Search now matches name, description, topics, language and author, requires every term to match, and ignores case and accents. Adds a result count, a clear button, Escape to clear, / to focus the input, an empty state, and persists the query across navigation.
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Moves search and sort into a sticky toolbar, renders repositories as responsive cards with topic chips and metadata, and adds a dedicated empty state. Keeps the existing Angular Material tabs and paginator.
|
Thanks for the summary. As noted above, CodeRabbit is not reviewing this repository automatically, and the comment does not contain actionable findings. Local verification before pushing:
The E2E workflow is in |
Adds a hero header with description and topics, a stats row, a styled README card with GitHub-like typography, and a sticky about sidebar with links and download actions.
Adds the light editorial layout, filter panel with topics/language/min stars, query operators, skeleton loading, staggered row entrance, branded route transition, spinning star tiers and header animations.
Replace *ngIf/*ngFor with @if/@for across the home, repository, details and root templates, as requested in review.
We prefer template literals over string concatenation and the built-in control flow over *ngFor, so this moves the remaining code to them. The how-to page loses the ?. on CONF because under @for it makes keyvalue type the values as unknown, which breaks the build.
The header took more vertical space than it needed, and on long lists you had to scroll to the bottom to change page.
Relative paths were resolved against the catalogue site, so those images never loaded. They now point at the file in the repository on its default branch.
The touch area of the smaller pagination buttons stuck out of the tab content and made it scroll sideways.
|
Super cool! Thanks! |
What
A full pass on the catalogue experience: search, discovery, loading feedback, motion and the repository details page.
Why
matchingItemsonly checkeditem.name, so searching a topic (lua), a description or an author returned nothing. The list was a flat stack of rows, with no filters, no result count, no loading state and an unstyled details page.Before / after
Home
Searching
lua(0 results before, 24 after)Repository details
Search
topic:lua,lang:TypeScript(language:),owner:azerothcore,stars:>100.sessionStorage; "Reset" clears search and filters./to focus.Filters
Topic chips (top 14 per tab), language and minimum stars; active filters render as removable chips and the count badge on the button.
Loading and motion
prefers-reduced-motiondisables all of it.Star tiers
Details
Breadcrumb (
Catalogue / owner / repo), hero with description, topics, GitHub and Download ZIP, stats row, README card with GitHub-like typography and a sticky About sidebar.Mobile
Test plan
npx ng build— passes.npm run test-ci -- --browsers=ChromeHeadless— 28 SUCCESS.lua,transmog,eluna azerothcore,topic:lua,owner:azerothcore,stars:>100, filters, reset,/shortcut, star tiers, route transition, 420 px layout.Notes
assets-preview(preview/v2) so the PR diff stays free of binaries.action_requiredwaiting for a maintainer to approve the first run from this fork; CodeRabbit skipped automatic review because the repo has fewer than 10 stars.