Commit Graph

138 Commits

Author SHA1 Message Date
5088ffee7a fix: rename solutionCode to solution in HTML lesson files
Consistent property naming across all lesson files - the LessonEngine
expects 'solution' property for rendering expected preview.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 10:38:53 +01:00
e38d5bc901 fix: hide original textarea to prevent browser form restoration artifact
- Add display:none to initial textarea (CodeMirror replaces it)
- Add autocomplete=off to prevent browser from restoring old form values

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 10:06:55 +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
d1289ff456 fix: use One Dark theme for CodeMirror syntax highlighting
- Replace custom highlight styles with @codemirror/theme-one-dark
- Cleaner implementation with official CodeMirror theme
- Keep custom font and padding overrides
2025-12-22 01:17:10 +01:00
a9311cf5f9 fix: add category prefixes to module titles in sidebar
- CSS: Basic Selectors
- CSS: Advanced Selectors
- Tailwind: Basics

HTML modules already have "HTML" in their titles.
2025-12-22 01:09:47 +01:00
e427349749 feat: add CodeMirror 6 editor with Emmet support
- Replace textarea with CodeMirror 6 for syntax highlighting
- Add Emmet abbreviation expansion (Tab to expand)
- Support HTML and CSS language modes with autocomplete
- Add dark theme matching app design
- Tab indentation with Shift-Tab for outdent
- Update help modal with Emmet shortcuts
2025-12-21 23:37:14 +01:00
db4f143924 refactor: redesign layout to Flexbox Froggy style with slide-out sidebar
- Implement 50/50 split layout (left: instructions + editor, right: preview)
- Replace always-visible sidebar with slide-out drawer menu
- Move footer, progress, and settings into sidebar
- Add toggleable expected result overlay (hidden by default)
- Create new hint system with step progress indicators
- Add ghost button styles for modal and text button for sidebar reset
- Fix HTML lesson task instruction and typo ("important" not "importing")
- Add padding to preview frames to prevent corner clipping
- Optimize layout for iPadOS and tablet devices
2025-12-21 23:20:07 +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
94cdf368bc fix: remove sub-folder deployment 2025-06-11 14:29:12 +02:00
Michael Czechowski
3338c012c9 docs: update README to include Tailwind CSS support and enhance clarity 2025-06-10 23:46:00 +02:00
Michael Czechowski
4664bc7fdb refactor: clean up unused lesson imports and improve code consistency 2025-06-10 23:45:46 +02:00
Michael Czechowski
223cb2d0c9 docs: add comprehensive comparison of commonjs and es modules in german and english 2025-06-06 10:56:23 +02:00
Michael Czechowski
23266a9aea fix: update validation message for clarity and consistency 2025-06-05 23:38:00 +02:00
Michael Czechowski
f020601437 fix: update success background color for improved visibility and remove unused color variables 2025-06-05 23:37:25 +02:00
Michael Czechowski
a4db81c4c6 feat: update instruction styles with new colors and enhanced readability 2025-06-05 23:31:19 +02:00
Michael Czechowski
5da62807a2 feat: enhance LessonEngine to manage user progress and code storage 2025-06-05 23:31:13 +02:00
Michael Czechowski
229fb1902f chore: simplify title and enhance preview HTML for tailwind basics module 2025-06-05 23:31:01 +02:00
Michael Czechowski
97b685a39b feat: update tailwind basics module with enhanced descriptions and new lessons 2025-06-05 23:16:49 +02:00
Michael Czechowski
daab71b6f1 feat: enhance lesson functionality with user code storage and progress tracking 2025-06-05 14:05:35 +02:00
9e28534562 feat: implement tailwind validations and basic example 2025-06-01 22:34:55 +02:00
33a0b7274b fix: update package lock after package json update 2025-06-01 22:03:19 +02:00
e6961bfa1a fix: remove deprecated properties 2025-06-01 22:02:55 +02:00
Michael Czechowski
0f88d1a938 fix: update strong selector example to include color property 2025-05-23 14:48:03 +02:00
Michael Czechowski
e1e7fcb827 wip 2025-05-23 14:35:05 +02:00
Michael Czechowski
e1b699db3b feat: add CSS carousels module and update lesson imports 2025-05-23 08:12:23 +02:00
Michael Czechowski
03f4a5c1d0 feat: add advanced selectors module and update lesson imports accordingly and release 2025-05-23 08:05:00 +02:00
Michael Czechowski
5e885e974f feat: add extended CSS examples and update lesson imports 2025-05-23 07:47:48 +02:00
Michael Czechowski
c549d5c65e feat: add footer with links to project repository and author website 2025-05-20 19:42:17 +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
a606011c9a fix: correct casing in validation message for consistency 2025-05-20 02:18:10 +02:00
Michael Czechowski
1577c8c39a style: organize CSS with section headers and sort rules 2025-05-20 01:51:50 +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
b408d8f7b5 feat: mark modules as work in progress for better clarity 2025-05-20 01:43:44 +02:00
Michael Czechowski
7c7e7c4ba0 fix: adjust hamburger menu animation for improved visual effect 2025-05-20 00:54:34 +02:00
Michael Czechowski
593faacf4c feat: implement responsive hamburger menu and enhance header layout 2025-05-20 00:52:23 +02:00
Michael Czechowski
371ff7bafa feat: update progress bar styling to increase height and change background color 2025-05-20 00:39:54 +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
e4de2a8d5c feat: update validation message to enhance user feedback 2025-05-20 00:26:47 +02:00
Michael Czechowski
e0b0a44cc2 feat: update task description to include HTML tags for paragraph and color properties; add solution code for CSS rule 2025-05-20 00:26:39 +02:00
Michael Czechowski
e123e4b84a feat: update task descriptions to include HTML tags for clarity in basic selectors lesson 2025-05-20 00:18:05 +02:00
Michael Czechowski
16f6d28107 feat: enhance styling for lesson components and improve kbd element appearance 2025-05-20 00:17:55 +02:00
Michael Czechowski
02fddca908 feat: update format script to include schemas directory for prettier 2025-05-19 23:42:14 +02:00
Michael Czechowski
391eb25d4b feat: add solution code and enhance validation rules for basic selectors lesson 2025-05-19 23:42:04 +02:00
Michael Czechowski
6c7ef3ff0b feat: enhance lesson preview functionality and improve run button interaction; change lesson indicator to percentage; split preview css for better isolation 2025-05-19 23:30:22 +02:00
Michael Czechowski
00935f02e8 feat: add kbd css styles and make sidebar transparent for better focus on lessons 2025-05-19 22:14:18 +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
ed984a1d2e feat: add fine grained validations for class-selectors lesson 2025-05-19 22:13:02 +02:00
Michael Czechowski
51faf1957c feat: simplify module description for clarity 2025-05-19 20:32:23 +02:00
Michael Czechowski
4483a42c43 feat: update logo image to new design 2025-05-19 20:30:45 +02:00