Chord Strum Counter Logo

Chord Strum Counter

Built by a beginner guitarist to solve the chord transition plateau. Practice transitions hands-free, reference fretboards in real time, and track your speed gains.

music_note Personal Practice Tool tune Tuner Planned code View on GitHub

About the App

As a beginner guitarist, one of the first wall-hitting exercises you encounter is the classic one-minute chord transition drill. You sit with your guitar, switch between chords like A and D as fast as you can, and struggle to keep count in your head while your fingers fumble for the frets. I originally set out with a simple goal: build a lightweight tool that listened through the microphone to count strums automatically so I could keep my hands glued to the instrument.

How it works: Pick a pair of chords you are working on (or select a beginner progression like C → G → Am), dial in your drill timer, and set your metronome tempo. Hit start, place your phone down, and play. Using on-device audio signal processing, the app reads raw 16-bit PCM microphone input, filters out string sustain through adaptive onset detection, and counts each clean strum in real time. When time is up, you get an instant breakdown of your speed in Strums Per Minute (SPM), total transitions, and whether you broke a personal record.

A complete practice companion: As I used the counter during my own daily practice routines, I realized counting was only one piece of the puzzle. I kept pausing to look up finger placements or check which strings were supposed to be muted, so I started adding everything I reached for. The project evolved into an all-in-one companion for learning guitar: an integrated visual chord library with clear fretboard diagrams and finger markers, ready-made beginner progression presets, and a built-in low-latency woodblock metronome that keeps your internal clock steady.

Built for the craft, 100% offline: Seeing your progress is what keeps you picking up the guitar every day. Chord Strum Counter tracks your daily practice streaks, calculates lifetime strums, and logs your speed records per chord pair in a local Room database, all completely offline, with zero ads, no accounts, and no audio ever leaving your device. Wrapped in a warm dark theme inspired by acoustic tonewoods, brass frets, and amber lacquer, it is a personal helper app built for real practice, with an integrated tuner planned to complete the toolkit.

Built by a learner, refined for the craft. Keep your hands on the guitar.

Key Features

  • graphic_eq

    Hands-Free Strum Detection

    Automatically counts chord changes using on-device microphone RMS onset math, letting you focus 100% on fretting and finger muscle memory.

  • library_music

    Interactive Fretboard Chord Charts

    Displays clean, beginner-friendly fretboard diagrams with exact finger numbers, open strings, muted markers, and quick chord-pair presets.

  • speed

    Procedural Practice Metronome

    Synthesizes low-latency woodblock clicks directly through Android AudioTrack across 40-240 BPM, complete with a visual 4-beat pulse to lock in your rhythm.

  • emoji_events

    Motivation Engine & Speed Analytics

    Stores your daily practice streaks, calculates Strums Per Minute (SPM), and celebrates progression-specific personal records so you can see your speed improve over time.

code_blocks

Tech Stack

Hover to reveal the technologies powering Chord Strum Counter.

Powered By

  • integration_instructions
    Architecture & UI Android Native, Clean Architecture (Domain / Data / Presentation), Jetpack Compose with Material 3, MVVM + UDF (StateFlow), Navigation Compose, Hilt DI.
  • database
    Backend & Data Local-First Architecture, Room Database (KSP DAOs & Migrations), Jetpack DataStore Preferences, Kotlin Coroutines & Reactive Flow.
  • graphic_eq
    Platform & Audio Engine Android AudioRecord (16-bit PCM Low-Latency Audio Stream), Android AudioTrack (Procedural Sound Synthesis), Hardware Haptics, Splash Screen API.
  • bug_report
    Quality & Tooling JUnit 4, CashApp Turbine, MockK, JaCoCo Code Coverage, Compose Compiler Plugin, AGP 9.3 (Target SDK 37), GitHub Actions CI.
  • smart_toy
    AI Assistants Google Stitch (UI layout design & design tokens), Google Antigravity (Architecture design & autonomous agent workflow).