Repository navigation
DOC-7295 Replace the develop landing page tiles with a client picker and cards - #4528
paoloredis wants to merge 1 commit into
Conversation
…and cards The develop landing page repeated "Get started", "Document search", and "Vector search" in 11 client tiles. They are now one client picker: a chip per client, and a single panel with that client's guides. The Redis Insight and Redis for VS Code tiles become two cards with a download button, and the Quick start, Data types, and Redis Search tiles become three matching cards. The "Try Redis commands" box keeps its border and gets the picker's grey body. The picker switches panels with CSS alone. Each client is a radio input, its label, and its panel, as siblings in that order, and the checked input shows the panel two siblings after it. A small inline script in the develop layout preselects the client from the language saved by the code tabs (selectedCodeTab), and saves the reader's pick back to it. The picker stays raw HTML in the page instead of a shortcode, because the Markdown output for agents strips shortcodes and would lose the guide links. All link targets are unchanged. The only relabel is Rust's "Document search" row, now "JSON documents", because it links to a JSON page and not a search page. Learned: assets/css/index.css comes after the Tailwind utilities, so a rule there beats a utility class of the same specificity on the element. Constraint: Keep each client's input, label, and panel adjacent and in that order; the CSS relies on input:checked + label + div. Constraint: Keep the picker as raw HTML in content/develop/_index.md; a shortcode would drop its links from the agent Markdown output. Directive: If the code tab names in config.toml clientsExamples change, update the toTab and fromTab mapping in layouts/develop/list.html. Rejected: Tailwind peer-checked for the panels | it uses ~, so every panel after the checked one would show too. Rejected: Removing the border from the Try Redis commands box | the author wants the box bordered. Gaps: Checked only in headless Chrome at 1440 and 390 px wide; not in Safari or Firefox, and not on production with the chat widget. Ticket: DOC-7295 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
|
Staging links: |
🧠 Redis MemoryFound 5 related items from repository history (5 new this commit):
Memory updated at 23f4ad2 |
andy-stark-redis
left a comment
There was a problem hiding this comment.
Looks nice and Claude says that if anything, it's a slight improvement from an AI's point of view.
dwdougherty
left a comment
There was a problem hiding this comment.
I think it looks very nice!
|
I think it is confusing to have to click twice, it seems broken because you select it but don't go anywhere |
mich-elle-luna
left a comment
There was a problem hiding this comment.
I'm afraid folks will not understand this, seems like a link (our other buttons are links) but it is a choice that requires a second choice
|
@mich-elle-luna what about something like this?
With the links taking you to the landing page for the client |

The develop landing page repeated "Get started", "Document search", and "Vector search" in 11 client tiles. They are now one client picker: a chip per client, and a single panel with that client's guides. The Redis Insight and Redis for VS Code tiles become two cards with a download button, and the Quick start, Data types, and Redis Search tiles become three matching cards. The "Try Redis commands" box keeps its border and gets the picker's grey body.
The picker switches panels with CSS alone. Each client is a radio input, its label, and its panel, as siblings in that order, and the checked input shows the panel two siblings after it. A small inline script in the develop layout preselects the client from the language saved by the code tabs (selectedCodeTab), and saves the reader's pick back to it. The picker stays raw HTML in the page instead of a shortcode, because the Markdown output for agents strips shortcodes and would lose the guide links. All link targets are unchanged. The only relabel is Rust's "Document search" row, now "JSON documents", because it links to a JSON page and not a search page.
Learned: assets/css/index.css comes after the Tailwind utilities, so a rule there beats a utility class of the same specificity on the element.
Constraint: Keep each client's input, label, and panel adjacent and in that order; the CSS relies on input:checked + label + div.
Constraint: Keep the picker as raw HTML in content/develop/_index.md; a shortcode would drop its links from the agent Markdown output.
Directive: If the code tab names in config.toml clientsExamples change, update the toTab and fromTab mapping in layouts/develop/list.html.
Rejected: Tailwind peer-checked for the panels | it uses ~, so every panel after the checked one would show too.
Rejected: Removing the border from the Try Redis commands box | the author wants the box bordered.
Gaps: Checked only in headless Chrome at 1440 and 390 px wide; not in Safari or Firefox, and not on production with the chat widget.
Ticket: DOC-7295
Note
Low Risk
Documentation and presentation changes on
/develop/with small client-side localStorage sync; no auth, APIs, or critical path changes.Overview
Replaces the Develop landing page’s repeated per-language tiles with a single client picker: radio chips per library and one shared panel of guide links, switched with CSS only (
input:checked + label + div). Tool rows (Redis Insight, Redis for VS Code) and topic rows (Quick start, Data types, Redis Search) become matching card grids with new styles inassets/css/index.css(.client-picker-grid,.develop-tools,.develop-topics).An inline script in
layouts/develop/list.htmlpreselects the picker fromlocalStorageselectedCodeTab(aligned with code-example tabs) and writes the choice back on change. The “Try Redis commands” table row gets a neutral background to match the picker. Rust’s second guide label changes to JSON documents; destinations are otherwise unchanged.Reviewed by Cursor Bugbot for commit 23f4ad2. Bugbot is set up for automated code reviews on this repo. Configure here.