Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

48 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CodeKids ๐Ÿš€

A fun, free learning adventure for kids ages 5โ€“14. Two parallel paths: visual block coding and brain-training puzzles. No downloads, no logins, no ads.

Live: coding.mazipan.space โ†’ https://coding-kids.netlify.app/ (alternative)


Learning Paths

๐Ÿงฉ Block Coding

Write code with visual Blockly blocks. 7 main worlds + 3 bonus worlds teaching programming concepts.

World Ages Concept Lessons
๐ŸŒด Jungle Adventure 5โ€“7 Sequences 6
๐Ÿš€ Space Station 7โ€“9 Loops 6
๐Ÿ”„ Loop Land 8โ€“10 Loop Efficiency 6
๐ŸŒŠ Ocean Deep 9โ€“11 Variables 5
๐Ÿ’Ž Crystal Caves 10โ€“12 Conditions 6
๐Ÿค– Robot Factory 11โ€“13 Functions 6
โฐ Time Portal 12โ€“14 Arrays & Lists 10

Bonus worlds (unlocked after completing all main worlds):

World Ages Concept Lessons
๐Ÿฆ• Jurassic Park 10โ€“14 Real-World Pathfinding 10
๐Ÿš— City Parking 10โ€“14 Sorting & Routing 10
๐Ÿ“ฆ Space Sorting 11โ€“14 Algorithms & Data 10

๐Ÿง  Brain Training

Pattern recognition, logic puzzles, math, science, and reasoning challenges. No code editor required. All 11 worlds are unlocked from the start.

World Ages Concept Lessons
๐Ÿ”ฎ Pattern World 5โ€“8 Pattern Recognition 10
๐Ÿง  Logic Land 7โ€“10 If/Then Thinking 10
โœจ Math Magic 8โ€“12 Number Patterns 10
๐Ÿงฉ Memory Maze 6โ€“10 Sequence Memory 10
๐ŸŒฟ Nature Quest 8โ€“11 Science Thinking 10
โšก Number Ninja 9โ€“13 Number Sequences 10
๐Ÿงฉ Step by Step 6โ€“10 Decomposition 10
๐Ÿ” Think Alike 7โ€“11 Abstraction 10
๐Ÿ”ข Math Reasoning 8โ€“12 Mathematical Reasoning 10
๐Ÿ”ฌ Rule Finder 8โ€“12 Inductive Reasoning 10
๐Ÿ•ต๏ธ Logic Detective 9โ€“13 Deductive Reasoning 10

Features

  • Two learning paths โ€” Block Coding and Brain Training, both accessible from the hub at /app
  • Shared XP & stars โ€” progress flows across both paths; one store, one level system
  • 7 block coding worlds โ€” Jungle โ†’ Space โ†’ Loop Land โ†’ Ocean โ†’ Crystal Caves โ†’ Robot Factory โ†’ Time Portal (+ 3 bonus worlds)
  • 11 brain training worlds โ€” 110 puzzles covering patterns, logic, math, memory, science, numbers, decomposition, abstraction, math reasoning, induction, and deduction
  • XP & leveling โ€” 15 levels from Code Cub to Master Coder
  • Stars per lesson โ€” 1โ€“3 stars based on code efficiency (blocks) or attempts (thinking)
  • Next-world navigation โ€” each world links directly to the next at the bottom of its lesson list
  • Bilingual โ€” English and Indonesian, auto-detects browser locale
  • Mobile-friendly โ€” works on phone, tablet, and desktop
  • 100% static โ€” no backend, no server, no login, no data collected

Routes

URL Screen
/ Landing page
/app Path selector (hub)
/app/blocks Block coding world map
/app/blocks/world/:worldId Block coding lesson list
/app/blocks/world/:worldId/:lessonNumber Lesson (Blockly + game grid)
/app/thinking Brain training world map
/app/thinking/world/:worldId Brain training lesson list
/app/thinking/world/:worldId/:lessonNumber Thinking puzzle screen
/* Redirect to /

Tech Stack

  • React 19 + TypeScript + Vite 8
  • Blockly v13 โ€” visual block programming
  • Framer Motion โ€” animations
  • Tailwind CSS v4 โ€” styling
  • React Router v7 โ€” routing
  • React Aria Components โ€” accessible modals (RewardModal)
  • lucide-react โ€” icons throughout the app
  • Web Audio API โ€” synthesized sound effects (no library)
  • localStorage โ€” all progress stored client-side

Getting Started

bun install
bun run dev

Open http://localhost:5173 โ€” landing page at /, game hub at /app.

bun run build  # must pass before committing (tsc + vite)

Project Structure

src/
โ”œโ”€โ”€ blockly/
โ”‚   โ”œโ”€โ”€ customBlocks.ts      # move_right/left/up/down, collect_item blocks + JS generators
โ”‚   โ””โ”€โ”€ toolboxes.ts         # buildToolbox(categories[]) โ†’ Blockly toolbox JSON
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ BlocklyWalkthrough.tsx  # First-time tour overlay for each world
โ”‚   โ”œโ”€โ”€ BlocklyWorkspace.tsx    # forwardRef โ€” exposes resize() via useImperativeHandle
โ”‚   โ”œโ”€โ”€ Confetti.tsx            # Canvas-based confetti (120 particles, no library)
โ”‚   โ”œโ”€โ”€ GameGrid.tsx            # Absolute-positioned cells, Framer Motion character
โ”‚   โ”œโ”€โ”€ Header.tsx              # Sticky nav: logo/back (path-aware), XP bar, stars, EN/ID toggle
โ”‚   โ”œโ”€โ”€ Mascot.tsx              # Character + speech bubble
โ”‚   โ”œโ”€โ”€ RewardModal.tsx         # Post-lesson modal: stars, XP, level-up banner
โ”‚   โ”œโ”€โ”€ StarRating.tsx          # 1โ€“3 stars display
โ”‚   โ””โ”€โ”€ XPBar.tsx               # XP progress bar with optional level name (hideLabel prop)
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ lessons.ts              # block coding lessons across 10 worlds
โ”‚   โ”œโ”€โ”€ thinkingLessons.ts      # 110 brain training lessons across 11 worlds
โ”‚   โ”œโ”€โ”€ thinkingWorlds.ts       # 11 thinking worlds
โ”‚   โ”œโ”€โ”€ worlds.ts               # 10 block coding worlds with themes, emoji, characters
โ”‚   โ””โ”€โ”€ xpSystem.ts             # 15 XP levels, calculateStars(), getLevelInfo()
โ”œโ”€โ”€ engine/
โ”‚   โ””โ”€โ”€ gameEngine.ts           # parseCodeToActions(), applyAction(), checkWin()
โ”œโ”€โ”€ i18n/
โ”‚   โ”œโ”€โ”€ LanguageProvider.tsx    # React context: useLanguage() โ†’ { t, language, setLanguage }
โ”‚   โ”œโ”€โ”€ localize.ts             # localize(LocalizedString, language) helper
โ”‚   โ””โ”€โ”€ translations.ts         # Flat-key EN + ID strings
โ”œโ”€โ”€ screens/
โ”‚   โ”œโ”€โ”€ HomeScreen.tsx          # Block coding: world map + lesson list
โ”‚   โ”œโ”€โ”€ LandingScreen.tsx       # Marketing landing page
โ”‚   โ”œโ”€โ”€ LessonScreen.tsx        # Blockly editor + game grid + controls
โ”‚   โ”œโ”€โ”€ PathSelector.tsx        # Hub at /app โ€” choose blocks or brain training
โ”‚   โ”œโ”€โ”€ ThinkingHome.tsx        # Brain training: world map + lesson list
โ”‚   โ””โ”€โ”€ ThinkingLesson.tsx      # Brain training puzzle screen (pattern/logic/math)
โ”œโ”€โ”€ store/
โ”‚   โ””โ”€โ”€ useProgress.ts          # localStorage โ€” XP, stars, lesson completion
โ”œโ”€โ”€ types/
โ”‚   โ””โ”€โ”€ index.ts                # All shared TypeScript types
โ””โ”€โ”€ utils/
    โ””โ”€โ”€ sounds.ts               # Web Audio API synth sounds (no library)

License

MIT


By Irfan Maulana

About

๐Ÿง‘โ€๐Ÿ’ป A fun, free learning adventure for kids ages 5โ€“14. Two parallel paths: visual block coding and brain-training puzzles. No downloads, no logins, no ads.

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Used by

Contributors

Languages