An interactive web application for learning and exploring music theory concepts including scales, chords, intervals, and rhythm.
- Interactive Piano - Visual piano keyboard for note selection
- Scales & Chords - Explore major/minor scales and various chord types (Major, Minor, Diminished, Augmented, 7th chords)
- Intervals - Learn musical intervals and their semitone distances
- Rhythm Chart - Visualize rhythm patterns and timing
- Bilingual Support - English and Chinese interface (中文 & English)
- AI Integration - Gemini API support for educational assistance
- Framework: Next.js 14 with React 18
- Language: TypeScript
- Styling: Tailwind CSS
- Visualization: Chart.js
- Icons: Lucide React
# Install dependencies
npm install
# Run development server
npm run dev
# Build for production
npm run buildOpen http://localhost:3000 in your browser.
app/- Next.js app directory with main page and layoutcomponents/- React components (Piano, ScaleChart, RhythmChart, Sidebar)lib/music.ts- Music theory utilities (notes, chords, scales, intervals)
Set NEXT_PUBLIC_GEMINI_KEY environment variable for AI features.