Skip to content

fmendezc98/singing-app

Repository files navigation

Singing Practice App

A mobile-first app to improve singing skills daily through warmups, karaoke practice, and music theory lessons.

Features

  • Daily Vocal Warmups: Choose from head voice, chest voice, or mix voice routines with guided step-by-step exercises
  • Karaoke Practice: Practice songs with timed lyrics highlighting and progress tracking
  • Theory Journey: Gamified music theory lessons with XP-based progression, similar to language learning apps
  • Streaks & Stats: Track your practice streak and see your progress over time

Getting Started

Prerequisites

  • Node.js (v18 or later)
  • npm or yarn
  • Expo CLI (npm install -g expo-cli)

Installation

  1. Install dependencies:
npm install
  1. Start the Expo development server:
npm start
  1. Run on your device:
    • Install the Expo Go app on your iOS or Android device
    • Scan the QR code from the terminal
    • Or press i for iOS simulator or a for Android emulator

Project Structure

src/
  ├── components/          # Shared UI components
  ├── data/               # Seed data (warmups, songs, theory units)
  ├── screens/            # Screen components
  │   ├── Home/           # Home stack with warmup flow
  │   ├── Karaoke/        # Karaoke song list and player
  │   ├── Theory/         # Theory journey and lessons
  │   └── Warmup/         # Warmup selection, player, completion
  └── store/              # Zustand store for progress tracking

Tech Stack

  • React Native with Expo for cross-platform mobile development
  • React Navigation for navigation
  • Zustand for state management
  • AsyncStorage for local persistence
  • TypeScript for type safety

Features in Detail

Daily Warmups

  • Select from multiple routines focused on head voice, chest voice, or mix voice
  • Step-by-step guided exercises with tips
  • Progress tracking and streak maintenance

Karaoke Practice

  • Song library with difficulty levels
  • Timed lyrics that highlight as you practice
  • Practice session tracking

Theory Journey

  • Progressive units that unlock as you complete lessons
  • Multiple lesson types: flashcards, quizzes, listening exercises, and singing prompts
  • XP system for gamification
  • 80% completion requirement to unlock next unit

Progress Tracking

  • Daily streak counter
  • Total practice minutes
  • Completed warmups, songs, and lessons
  • XP accumulation

Future Enhancements

  • Real audio playback for warmups and karaoke
  • Pitch detection and visual feedback
  • More songs and warmup routines
  • Social features and sharing
  • Daily practice reminders

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages