feat: make feed directory search-first and easier to browse#1102
feat: make feed directory search-first and easier to browse#1102gildesmarais merged 2 commits intomainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Redesigns the Feed Directory documentation page and component to be search-first, with improved instance selection UX and tighter feed rows (source link, RSS action, copy action).
Changes:
- Replaces most of the MDX page intro with the
FeedDirectorycomponent and updated instance/contribution links. - Refactors the feed directory client JS: search result/empty state handling, instance URL editor + hash persistence, parameter form toggles, and copy-to-clipboard.
- Rebuilds the
FeedDirectory.astromarkup/CSS for the new layout (search header, instance summary/editor, feed rows, and empty state).
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| src/content/docs/feed-directory/index.mdx | Embeds FeedDirectory and updates surrounding copy/links. |
| src/components/feed-directory.js | Adds instance hash handling, improved search UI state, parameter toggles, and copy-link behavior. |
| src/components/FeedDirectory.astro | New search-first layout + feed row actions and styling. |
| </section> | ||
|
|
||
| <!-- Enhanced functionality with vanilla JavaScript --> | ||
| <script src="./feed-directory.js"></script> |
There was a problem hiding this comment.
<script src="./feed-directory.js"> is a URL relative to the rendered page, but feed-directory.js lives under src/components/ and there is no corresponding file in public/. Unless this script is emitted elsewhere, the browser will likely 404 this request and the directory will lose its JS behavior (search, instance switching, copy). Consider bundling it via Astro/Vite (e.g., import it as a module) or moving it into public/ and referencing it with a stable absolute path.
| <script src="./feed-directory.js"></script> | |
| <script src={Astro.resolve('./feed-directory.js')}></script> |
There was a problem hiding this comment.
I checked the built output before and after 45105d0. Astro is emitting the component script as a bundled module asset under dist/_astro/FeedDirectory...js, so this relative src is being compiled rather than requested from /feed-directory/feed-directory.js. Leaving this thread open if you want the component switched to an explicit imported pattern anyway.
Summary
Validation