A React application designed to help guitarists track strums during practice sessions with an integrated metronome.
- Strum Counter: Automatically counts strums in sync with the metronome beat
- Adjustable Tempo: Set your desired practice tempo from 30-240 BPM
- Audio Feedback: Optional metronome sounds to help you stay in rhythm
- Milestone Announcements: Voice announcements at every 100 strums to track your progress
- Simple Interface: Clean, intuitive design focused on practice efficiency
- Node.js (v14 or later)
- npm or yarn
- Clone the repository
git clone https://github.com/yourusername/guitar-strum-counter.git
cd guitar-strum-counter
- Install dependencies
npm install
# or
yarn install
- Start the development server
npm start
# or
yarn start
- Set your tempo using the metronome controls (adjust BPM with + and - buttons)
- Click Start to begin counting strums
- Practice your strumming in time with the metronome
- The counter will automatically increment with each beat
- Listen for milestone announcements every 100 strums
- Click Stop when you're finished with your practice session
The main application component that manages state and orchestrates the counter and metronome.
Displays the current strum count with a clean, animated interface.
Controls the tempo and provides audio feedback. Available in standard and compact layouts.
The application uses Tailwind CSS for styling, making it easy to customize the appearance by modifying the class names in the component files.
- Built with React and functional components with hooks
- Uses Web Audio API for precise timing and sound generation
- Incorporates speech synthesis for milestone announcements
- Responsive design works on desktop and mobile devices