@tonaljs/chord-type
TypeScript icon, indicating that this package has built-in type declarations

5.1.0 • Public • Published

@tonaljs/chord-type tonal npm version

A dictionary of musical chords.

Usage

ES6:

import { ChordType } from "tonal";

node:

const { ChordType } = require("tonal");

API

ChordType.get(name: string) => object

Given a chord type name, return an object with the following properties:

  • name: the chord type name
  • aliases: a list of alternative names
  • quality: Major | Minor | Augmented | Diminished | Unknown
  • num: the pcset number
  • chroma: the pcset chroma
  • length: the number of notes
  • intervals: the interval list

Example:

ChordType.get("major"); // =>
// {
//   name: "major",
//   aliases: ["M", ""],
//   quality: "Major",
//   intervals: ["1P", "3M", "5P"],
//   num: 2192,
//   chroma: "100010010000",
//   length: 3
// });

ChordType.names() => string[]

List all chord type (long) names in the dictionary

ChordType.symbols() => string[]

List all chord type (long) names in the dictionary

ChordType.all() => object[]

Return a list of all available chord types.

ChordType.add(intervals: string[], names: string[], fullName?: string) => ChordType

Add a chord type to dictionary:

add(["1P", "3M", "5P"], ["M"], "mayor");

HOW TO

How to get triad chord names?

ChordType.all()
  .filter((get) => get.length === 3)
  .map((get) => get.name);

How to add a chord type to the dictionary?

ChordType.add(["1P", "3M", "5P"], ["M", "may"], "mayor");
ChordType.get("mayor"); // => { name: 'mayor', quality: "Major", chroma: ... }
ChordType.get("may"); // => { name: 'mayor', quality: "Major", chroma: ... }

Package Sidebar

Install

npm i @tonaljs/chord-type

Weekly Downloads

1,565

Version

5.1.0

License

MIT

Unpacked Size

50.6 kB

Total Files

9

Last publish

Collaborators

  • danigb