Checklist of technical layers required when adding a new primary text reader (e.g., Jerusalem Talmud, Mishneh Torah) to ChavrutAI. Use when planning or implementing a new text corpus to ensure parity with existing Talmud Bavli, Bible, and Mishnah readers.
التثبيت
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Checklist of technical layers required when adding a new primary text reader (e.g., Jerusalem Talmud, Mishneh Torah) to ChavrutAI. Use when planning or implementing a new text corpus to ensure parity with existing Talmud Bavli, Bible, and Mishnah readers.
New Text Reader Checklist
When adding a new primary text reader to ChavrutAI, every layer below must be implemented to match the existing Talmud Bavli, Bible, and Mishnah readers. Use this as a planning and review checklist.
Clean copy handler — Add a useEffect that attaches a copy event listener to the text container (.bg-card.rounded-lg.shadow-sm.border.border-border.p-6):
Clones the selected range into a temporary container
Removes external link arrow glyphs (↗) from text nodes
Removes section header UI (elements matching [data-testid^="link-sefaria-section-"] and their parents)
Removes section badge header rows (.bg-secondary.text-secondary-foreground badges and their .flex.items-center.justify-center ancestor)
Reorders bilingual columns so Hebrew precedes English (swap .lg\:order-1 / .lg\:order-2 in .text-display containers)
Strips formatting to an allowlist of tags (strong, b, i, em, p, div, br, span, a, sup, sub, small)
Preserves direction: rtl and font-weight: bold for Hebrew text
Sets both text/html and text/plain on clipboardData, then calls preventDefault()
Cleans up the listener on unmount; depends on [textData]
Existing examples:
Mishnah: mishnah-chapter.tsx (standalone handleCopy in useEffect)