Downloads page, OS auto-detection, and broken link fixes - #700
Draft
tarone-saloni wants to merge 2 commits into
Draft
Downloads page, OS auto-detection, and broken link fixes#700tarone-saloni wants to merge 2 commits into
tarone-saloni wants to merge 2 commits into
Conversation
… and site-wide fixes - New /downloads page with per-OS sections that highlight and reorder to the detected platform (Windows/macOS/Linux) - Move community meeting minutes out of the modal popup into their own shareable pages, generated by a Docusaurus plugin - Fix a footer navigation bug where Downloads/Installation/Documentation links resolved relative to the current page instead of site root, 404ing from every non-homepage page - Fix 18 dead self-referential links in old blog posts pointing to retired URL patterns (podman.io/releases/*, podman.io/community/#*, podman.io/getting-started/*) - Fix InfoBanner gradient/background rendering, blog-card author link, CustomCard button/markdown rendering, and other component bugs - Redesign navbar, footer, Get Started page, and docs sidebar/TOC styling to match the site's Next.js reference design Signed-off-by: Saloni Tarone <taronesaloni@gmail.com>
tarone-saloni
force-pushed
the
feat/downloads-os-detection-and-broken-links
branch
from
August 16, 2026 10:01
9abd683 to
e1e03c4
Compare
- Replace the two full-bleed InfoBanner color bars (Code of Conduct, Podman Desktop meetings) with inset callout cards, so the page no longer breaks into hard-edged color stripes between sections - Give the contributor logos a card container instead of floating loose on the page background, with a consistent white chip per logo so brand colors render correctly in both themes Signed-off-by: Saloni Tarone <taronesaloni@gmail.com>
Contributor
|
I believe, this was raised by you as a part of PoC for your proposal. If that is the case, you should raise this PR against your own fork main, so that it doesn't show up here as a draft PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Concisely describe the change
TODO: rewrite the section below in your own words before marking ready for review.
This addresses part of the "Website Design and UX Improvements" scope from the
LFX mentorship issue (#512): the Downloads page with OS
auto-detection, meeting minutes getting their own shareable pages, and a pass
through the "broken links, formatting problems, stale content" backlog
mentioned in that issue.
Downloads page + OS auto-detection
src/pages/downloads.tsx,src/components/content/DownloadsGrid/: new/downloadspage. Each OS (Windows/macOS/Linux) gets its own section;src/lib/detectOperatingSystem.tsreadsnavigator.userAgentclient-sideand the matching section is reordered to the top and visually highlighted
("Recommended for your system" badge). Previously "Other Install Options"
on the homepage just linked to the install docs — there was no dedicated
download page at all.
Meeting minutes pages
src/plugins/meetingNotesPlugin.js,src/components/pages/MeetingNotePage/:a custom Docusaurus plugin reads
static/data/meetings/notes/*/index.mdand generates a static route per meeting, each with its own shareable URL.
Replaces the old approach of wildcard-importing every note file into a
manually maintained index and rendering them inside a modal popup — that
approach also silently dropped the most recent meeting whenever the export
list wasn't updated, and notes couldn't be linked to directly.
Site-wide footer link bug (404 on almost every page)
docusaurus.config.js: the custom footer'sto:values forDownloads/Installation/Documentation were relative paths without a leading
/(to: 'downloads'instead ofto: '/downloads'). Docusaurus's<Link>only auto-prefixes the site base URL for paths starting with
/; withoutit, the path resolves relative to whatever page you're currently on. So
from any blog post, docs page, or community page — i.e. everywhere except
the homepage — clicking those footer links 404'd (e.g.
/blogs/2018/08/15/downloadsinstead of/downloads). Confirmed via afull crawl of all ~600 built pages before and after the fix (0 broken
internal links after).
Dead links in old blog posts (18 links across 9 files)
domain that no longer resolve:
podman.io/releases/*.html(now/release/*),podman.io/community/#*andpodman.io/getting-started/*(now
/communityand/get-started). Repointed each to the currentworking route; left untouched anything pointing to genuinely dead
third-party content (deleted Twitter accounts, discontinued BlueJeans
links, etc. — nothing on our end can fix a 404 on someone else's site).
Component bugs fixed along the way
InfoBanner: default gradient was missingbg-gradient-to-r, so thefrom/via/to color classes never actually rendered as a gradient; a
caller-supplied background was also always masked by the default. Both
banners on the Community page were meant to be purple but rendered blue.
authorfrom
_fields, so the author link always pointed at the generic/author/page instead of the post's actual author.CustomCard: picked link-vs-modal for its secondary button by arrayindex instead of checking whether the button actually has a path, and
wrapped react-markdown's own block output in an extra
<p>(invalidHTML nesting).
FeaturesCarousel: stray'0 'class typo.CommunityMeetingsCardGrid: usedjustify-content-center/align-items-center(not real Tailwind classes, no-ops) and hadunguarded
.shift()calls that could pushundefinedinto childcomponents on short meeting lists.
Redesign work carried in this branch
to match the site's Next.js reference design (numbered step cards,
terminal-style code blocks with copy buttons, pill-highlighted active
nav/sidebar items, gradient navbar, swizzled Footer with logo/social
icons).
Before screenshot / screen recording
Link : https://drive.google.com/file/d/1zM6Xuh6wZZ4e2u30hin61HK6eCpC4RNU/view?usp=sharing
After screenshot / screen recording
Link : https://drive.google.com/file/d/1ot4A2KdjLYu93Q4dWY9OgkKY9bavGajo/view?usp=sharing
Checklist
git commit -s).Fixes: #00000in commit message (if applicable)