Skip to content

DOC-7295 Replace the develop landing page tiles with a client picker and cards - #4528

Open
paoloredis wants to merge 1 commit into
mainfrom
DOC-7295
Open

paoloredis wants to merge 1 commit into
mainfrom
DOC-7295

Conversation

@paoloredis

@paoloredis paoloredis commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

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 in assets/css/index.css (.client-picker-grid, .develop-tools, .develop-topics).

An inline script in layouts/develop/list.html preselects the picker from localStorage selectedCodeTab (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.

…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>
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@github-actions

github-actions Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

DOC-7295

@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

🧠 Redis Memory

Found 5 related items from repository history (5 new this commit):

Memory updated at 23f4ad2

@andy-stark-redis andy-stark-redis left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks nice and Claude says that if anything, it's a slight improvement from an AI's point of view.

@dwdougherty dwdougherty 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.

I think it looks very nice!

@mich-elle-luna

Copy link
Copy Markdown
Collaborator

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 mich-elle-luna 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.

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

@paoloredis

Copy link
Copy Markdown
Collaborator Author

@mich-elle-luna what about something like this?

Screenshot 2026-11-10 at 16 45 57

With the links taking you to the landing page for the client

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants