GithubHelp home page GithubHelp logo

chordbook / metronome Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 68 KB

Home Page: https://chordbook.github.io/metronome/

License: GNU General Public License v3.0

TypeScript 68.54% HTML 26.70% CSS 3.10% JavaScript 1.67%

metronome's Introduction

@chordbook/metronome

A web-based metronome.

๐Ÿฅ View Demo ๐Ÿช˜

Features

  • Consistent clock synchronization - any two devices with synchronized clocks will play in sync for a given tempo
  • Customizable meter (3/4, 4/4, 6/8, etc)
  • Customizable beat patterns (straight, swing, boom-chuck, etc)
  • Configurable audio (volume, mute, etc) and customizable sounds
  • Customizable visualizations

Installation

npm install @chordbook/metronome

Usage

import { createMetronome } from '@chordbook/metronome'

const metronome = createMetronome({
  tempo: 120.0,

  // Callback to visualize the beat
  onBeat: note => console.log('Beat:', note) // 0-15
})

// Request access to the web audio API and begin playing the metronome
metronome.start()

// Stop playing the metronome
metronome.stop()

Contributing

Contributions are welcome!

  1. Clone this repository: git clone https://github.com/chordbook/metronome.git
  2. Install dependencies: npm install
  3. Start the development server: npm run dev
  4. Open http://localhost:5173/ in your browser

Acknowledgements

The code derived from @cwilso's classic A tale of two clocks (repo). Thanks to @mattgraham for the idea to synchronize all metronomes for a given tempo using the wall clock.

License

This project is licensed under the GPLv3.0 license.

metronome's People

Contributors

bkeepers avatar dependabot[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.