Add copyable anchor links to section headings
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- css, html, python
- Domain
- accessibility, frontend
Research direction
Find the templates or components that render payload and documentation headings, along with the styles for the sticky header and existing scroll-margin-top. Start by tracing how heading ids are generated and used by the contents panel. Add the labeled links for h2 and h3 headings, then confirm they appear on hover and keyboard focus and target the heading ids.
Written by the indexing model from the issue text.
Description
Summary
Section headings on payload and docs pages have no anchor link, so readers cannot copy a link to a section from the page itself. They have to open the contents panel or edit the URL by hand.
Proposal
Show a small "#" link beside each h2 and h3 on hover and keyboard focus. It should link to the heading id and have an accessible label such as "Link to section: Attack Vectors". Optionally copy the full URL on click.
Why
Payload pages are long and are often shared in reports and chats.

Notes
Headings already have ids (they are used by the contents panel), so only the link markup and styling are needed. Keep scroll-margin-top so the heading is not hidden behind the sticky header.
- Dominant language
- Python
- Stars
- 22
- Forks
- 14
- Avg merge
- 14h 14m
- Merged PRs (30d)
- 29
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from OWASP/OWASP-Hunting
-
enhancement Website
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
OWASP/OWASP-Hunting#93 ·
Maintainers usually reply within 1 day
-
enhancement Website
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
OWASP/OWASP-Hunting#92 ·
Maintainers usually reply within 1 day
-
bug Website
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OWASP/OWASP-Hunting#91 ·
Maintainers usually reply within 1 day
-
bug Website
Difficulty 2/5 1-3 hours Newbie friendliness 79/100
OWASP/OWASP-Hunting#90 ·
Maintainers usually reply within 1 day
-
bug Website
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
OWASP/OWASP-Hunting#89 ·
Maintainers usually reply within 1 day
All issues in OWASP/OWASP-Hunting
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
FinanceFlash/unvibecode#699 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
micropython/micropython#19942 ·
Maintainers usually reply within 1 day
-
A rebuild posts "not part of this build" success to the commit's failed `nix-build` gate and effectsPossibly taken @Padraic-O-Mhuiris claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
`epoch.Integer` raises a raw OverflowError for integers too large to convert to a floatPossibly taken @arindam77 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
pydantic/pydantic-extra-types#479 ·
Maintainers usually reply within 1 day
-
Make the Elasticsearch request timeout of the API configurablePossibly taken @SaitejaKommi claimed this today. OpenAPI backend
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openfoodfacts/search-a-licious#601 ·
Maintainers usually reply within 2 days