Skip to content

tobagin/tempo

Repository files navigation

Tempo

A modern metronome for musicians.

Tempo Application

Get it on Flathub Support me on Ko-Fi

πŸŽ‰ Version 1.5.2 - Keyboard Fix & Runtime Update

Tempo 1.5.2 fixes the spacebar shortcut on launch and updates to GNOME Platform 50.

✨ Key Features

  • πŸš€ Precise Timing: Sub-millisecond accuracy with a drift-free timing engine
  • πŸ“± Responsive Design: Fully adaptive layout for mobile, tablet, and desktop
  • 🎨 Visual Feedback: Multiple visual modes (Circle, Pendulum, Bar Graph, etc.)
  • 🎹 Rhythm Patterns: Authentic genre-specific patterns (Clave, Bossa Nova, etc.)
  • βš™οΈ Advanced Controls: Tap tempo, custom sounds, and practice timer
  • πŸ”’ Privacy Focused: No telemetry, all data stays on your machine

πŸ†• What's New in 1.5.2

  • Keyboard Fix: Spacebar now starts/stops the metronome immediately on launch (fixes #15).
  • GNOME Platform 50: Updated Flatpak runtime and SDK to the latest GNOME Platform.

πŸ†• What's New in 1.5.1

  • Metadata Improvements: Verified and improved metainfo validation (summary, description, branding).
  • Documentation: Simplified README, added Flathub/Ko-Fi badges, and improved build instructions.

For detailed release notes and version history, see CHANGELOG.md.

Features

Core Features

  • High-Precision Timing: Uses absolute time references to prevent cumulative drift.
  • Dynamic Tempo: Adjust BPM from 40 to 240 with slider, stepper, or tap tempo.
  • Time Signatures: Full support for various meters and note values.
  • Rhythm Patterns: Practice with professional Cuban, Brazilian, Jazz, and Rock patterns.

User Experience

  • Adaptive Layout: Reconfigures UI elements for optimal use on any screen size.
  • Visual Modes: Choose from 5 different animation styles to suit your preference.
  • Shortcuts: Comprehensive keyboard controls for efficient operation.
  • Practice Timer: Session tracking with countdowns and auto-stop functionality.

Privacy & Performance

  • Low-Latency Audio: Optimized GStreamer pipeline for immediate response.
  • Resource Protection: Intelligent limiting to ensure stability on all hardware.
  • Local Data: Presets and setlists are stored locally in standard config paths.
  • Open Source: Built using modern Vala and GNOME technologies.

Building from source

# Clone the repository
git clone https://github.com/tobagin/tempo.git
cd tempo

# Build and install development version
./scripts/build.sh --dev --install
flatpak run io.github.tobagin.tempo.Devel

Usage

Basic Usage

Launch Tempo from your applications menu or run:

flatpak run io.github.tobagin.tempo
  • Start/Stop: Click the play button or press Spacebar.
  • Adjust Tempo: Use the slider or arrow keys (↑/↓).
  • Tap Tempo: Press T repeatedly to set the tempo.

Keyboard Shortcuts

  • Spacebar - Start/Stop metronome
  • T - Tap tempo
  • ↑ / ↓ - Increase / Decrease BPM
  • Ctrl+, - Open Preferences
  • Ctrl+P - Manage Presets
  • F1 - Show Keyboard Shortcuts

Privacy & Security

Tempo is designed to respect your privacy:

  • Sandboxed: Distributed as a Flatpak with minimal necessary permissions.
  • No Tracking: No telemetry, analytics, or external data reporting.
  • Secure Handling: Validates all custom audio files and user inputs.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

Tempo is licensed under the GPL-3.0-or-later.

Acknowledgments

  • GTK / Libadwaita Team: For the excellent UI toolkit.
  • GStreamer: For the powerful multimedia framework.
  • Vala: For the productive native language.

Screenshots

Metronome View Setlists View Patterns View
Main Window Setlists Patterns
Trainer View Presets View Preferences
Trainer Presets Preferences
About Dialog
About

Tempo - A modern metronome for musicians.

About

A Simple Metronome for Musicians

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors