Commit Graph

14 Commits

Author SHA1 Message Date
f934d8f982 fix: remove redundant Lessons heading from sidebar
The HTML already has an h4 heading for the lessons section with proper
ARIA labeling. The renderer was adding a duplicate h3 heading.
2025-12-30 14:54:28 +01:00
d06f7c9e6e feat: improve sidebar keyboard accessibility
- Add skip-to-content link for keyboard users
- Convert module headers and lesson items from divs to buttons
- Add ARIA attributes (aria-expanded, aria-controls, aria-label)
- Add focus return to trigger element when closing sidebar
- Shift main content when sidebar is open using CSS :has()
- Add code element styling in instruction boxes
2025-12-30 12:24:53 +01:00
c6ab97b67e fix: resolve initialization bugs breaking level indicator and expected preview
- Fix renderLesson to handle null inputEl (CodeMirror replaces textarea)
- Fix renderExpectedPreview to use 'solution' property instead of 'solutionCode'
- These fixes restore level indicator, expected preview, and auto-run functionality

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 10:04:41 +01:00
862d29aa19 feat: add HTML lessons mode and side-by-side comparison UI
- Add HTML mode support with new validation types (element_exists,
  element_count, attribute_value, element_text, parent_child, sibling)
- Create 3 HTML lesson modules: Elements, Forms Basic, Forms Validation
- Implement side-by-side preview comparison (Your Output vs Expected)
- Add merge animation with "Perfect Match!" overlay on validation success
- Render expected output from solutionCode field in lesson JSON
- Update schema to support HTML mode and solutionCode
- Reorder modules: HTML first, then CSS, then Tailwind
- Update tests for new functionality

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 22:12:00 +01:00
Michael Czechowski
daab71b6f1 feat: enhance lesson functionality with user code storage and progress tracking 2025-06-05 14:05:35 +02:00
Michael Czechowski
6d17801e2f feat: make sure to scroll to the top when navigating to lesson 2025-05-20 18:49:39 +02:00
Michael Czechowski
d698b42b10 fix: update scroll behavior for lesson navigation and adjust lesson description width for better scrolling 2025-05-20 18:29:40 +02:00
Michael Czechowski
ded85e9b7d feat: enhance module list rendering with expandable lessons and active lesson tracking 2025-05-20 01:43:57 +02:00
Michael Czechowski
8d499bf497 feat: add toggle switch for disabling error feedback and persist user settings 2025-05-20 00:37:36 +02:00
Michael Czechowski
ad875f7f75 fix: race condition closing error feedback to early when next should appear 2025-05-19 22:13:42 +02:00
Michael Czechowski
7e23e5b331 feat: implement better progress tracking and user feedback, run code after some idle time 2025-05-19 20:21:53 +02:00
Michael Czechowski
9249f122a4 feat: restructure lesson files and update success indicators 2025-05-14 00:51:10 +02:00
Michael Czechowski
0f2308a132 style: run format first time 2025-05-13 21:08:18 +02:00
Michael Czechowski
ab4279f9ca refactor: reorganize project structure and update import paths 2025-05-13 20:29:59 +02:00