All notable changes to CodeCraft are documented here.
- Java track (☕) — 10 lessons covering variables, methods, OOP, ArrayList, inheritance, and more
- Delphi track (🏆) — 10 lessons covering Pascal syntax, procedures, functions, records, arrays, and more
- Builder tab (🔨) — visual code block assembler with:
- Tap-to-add code blocks across 4 categories: Structure, Media, Style, Interactive
- Inline editing of any dropped block
- Smart contextual suggestions ("what could go next")
- Live HTML preview rendered in-browser via iframe
- Clear all and remove individual blocks
- Challenge detail screens — each challenge now opens a full screen with:
- Description, code editor, hint system, pass/fail result
- XP awarded on completion and saved to progress
- 8 bonus challenges across HTML, CSS, JS, Python, Java, and Delphi (FizzBuzz, Calculator, Grade Checker, Dark Mode Toggle, etc.)
- Lesson type system — 3 lesson types per track:
learn— read concept, write answererror— find and fix the bug in provided codefill— fill in the blanks to complete code
- XP not updating — Learn and Profile tabs now refresh progress on focus using
useFocusEffect - Challenges not clickable — replaced static cards with
Pressablecomponents and added navigation - Track cards not navigating — replaced
TouchableOpacitywithPressableacross all screens for better web compatibility - Base path routing — set
experiments.baseUrl: "/CodeCraft/"so all tab and lesson navigation works correctly on GitHub Pages
- All 4 original tracks (HTML, CSS, JS, Python) expanded from 3 lessons to 10 lessons each
- Total lessons: 60 (10 per track × 6 tracks)
- Tab bar updated to 4 tabs: Learn, Builder, Challenges, Profile
- GitHub Pages deployment via GitHub Actions (
.github/workflows/deploy.yml) - Web export configuration (
web.output: static,experiments.baseUrl) react-native-web,react-dom,@expo/metro-runtimefor web supportgenerateStaticParamson lesson screen for static route generation
- PowerShell execution policy blocking
npxcommands - Missing
react-domdependency causing web export failure - GitHub Pages environment protection rule blocking
masterbranch deploys - Base path 404 — added
publicPaththen migrated toexperiments.baseUrl
- Initial project scaffold using Expo SDK 56 + expo-router
- 3 tabs: Learn, Challenges, Profile
- 4 learning tracks: HTML (3 lessons), CSS (1), JavaScript (1), Python (1)
- Lesson flow: read concept → code challenge → pass/fail result with hint
- XP and streak system with AsyncStorage persistence
- Badge system on profile screen
- Per-track progress bars on Learn and Profile screens
- Dark theme design system (
constants/colors.ts) - MIT License and README
- AI tutor hint system (Claude API integration)
- Syntax-highlighted code editor (CodeMirror or Monaco)
- 50 lessons per track
- Animated XP pop-ups and level-up celebrations
- Leaderboard (opt-in)
- User accounts and cloud sync
- Mobile app store release via EAS Build
- Offline support