Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Docs emit duplicate heading IDs on Chart Factories and Capability Matrix

Open
#396 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@Alek99 is already working on this.

Since Jul 31, 2026.

  • #404 by @Alek99 — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
55/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet

Research direction

Start by locating the source for /docs/xy/api-reference/chart-factories/ and /docs/xy/styling/capabilities/, then inspect the production build at commit d505ef5789d8b18e23fd838300b039932dc399ce. Use document.querySelectorAll('[id]') and check the page TOCs and copied anchors. Done means every public route has unique IDs, with regression coverage for duplicate IDs.

Written by the indexing model from the issue text.

Description

Summary

Two production documentation pages emit duplicate DOM IDs, making copied anchors and table-of-contents navigation ambiguous.

Verified on the production build for main at d505ef5789d8b18e23fd838300b039932dc399ce.

Affected pages

Page Duplicate IDs
/docs/xy/api-reference/chart-factories/ xy-chart, shared-chart-props
/docs/xy/styling/capabilities/ notes

The Capability Matrix source has two visible ### Notes headings. Chart Factories combines authored and generated reference headings; the generated route contains both colliding strings twice.

Actual behavior

document.querySelectorAll('[id]') returns more than one element for each ID above. Both Capability Matrix TOC entries point to #notes.

Expected behavior

Every public page has unique DOM IDs, and each TOC/copy-link target identifies exactly one section.

Acceptance criteria

  • Rename or disambiguate both Notes anchors.
  • Disambiguate authored/generated xy-chart and shared-chart-props anchors.
  • TOC links and copied anchors land on the intended sections.
  • Add an all-public-route duplicate-ID regression check.
Dominant language
Python
Stars
1.9k
Forks
76
Avg merge
1h 25m
Merged PRs (30d)
5

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from reflex-dev/xy

All issues in reflex-dev/xy

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.