Skip to content

Enable interactive workshop checklist checkboxes on GitHub Pages#2

Merged
jamesmontemagno merged 5 commits intomainfrom
copilot/make-checkboxes-clickable
Mar 18, 2026
Merged

Enable interactive workshop checklist checkboxes on GitHub Pages#2
jamesmontemagno merged 5 commits intomainfrom
copilot/make-checkboxes-clickable

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 18, 2026

Workshop task-list checkboxes rendered in docs/step.html were non-interactive on the deployed GitHub Pages site, so learners could not track progress in-page. This change makes those checkboxes clickable and preserves their state across refreshes and step navigation.

  • Checkbox interactivity in rendered markdown

    • After marked.parse(md), initialize all input[type="checkbox"] inside #markdown-content.
    • Explicitly enable checkboxes so GitHub-style rendered task lists are user-clickable.
  • Per-step persistence model

    • Add local storage persistence under agent-lab-checkboxes-v1.
    • Store state by workshop step ID (00-overview, 01-setup, etc.) and checkbox index.
    • Rehydrate checked state on content load for the active step.
  • State management hardening

    • Add safe read/write wrappers for storage parsing/failures.
    • Debounce writes to avoid excessive storage churn during rapid toggling.
    • Guard initialization when the markdown container is unavailable.
<!-- docs/step.html -->
document.getElementById('markdown-content').innerHTML = marked.parse(md);
initializeTaskListCheckboxes(step.id); // enable + restore per-step checkbox state

Copilot AI and others added 5 commits March 18, 2026 22:33
Co-authored-by: jamesmontemagno <1676321+jamesmontemagno@users.noreply.github.com>
Co-authored-by: jamesmontemagno <1676321+jamesmontemagno@users.noreply.github.com>
Co-authored-by: jamesmontemagno <1676321+jamesmontemagno@users.noreply.github.com>
Co-authored-by: jamesmontemagno <1676321+jamesmontemagno@users.noreply.github.com>
Co-authored-by: jamesmontemagno <1676321+jamesmontemagno@users.noreply.github.com>
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.

2 participants