Skip to main content

Melodeon layout diagrams

Project description


Plot melodeon[^dba] layout diagrams

Version on PyPI Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public.

Standard 2-row, 21-key D/G layout




and ideas

  • basic diagram using mpl
  • different ways to indicate octaves (e.g. color; piano key notation or wrt. root)
  • different options for pitch labels (ABC, piano key notation, scale degrees)
  • plotting notes on stave
  • CLI
  • first PyPI release
  • HTML/CSS output option
  • fancier button style option (some 3-D-ness)
  • draw connections in bellows direction for consecutive notes or chord
  • docs build with layout library

Input format

ASCII representation of the layout.


  • notes in ABC notation, push/pull separated by / or |, push/pull pairs separated by whitespace
  • for each row, specify horizontal offset in the layout (zero implicit; e.g. 0.5 for the second row in a typical 11/10 layout)
    • maybe like x0.5 instead of just 0.5, to emphasize just space
  • bass chords also in ABC notation, but maybe also support the common +/-?

Layout sources

[^dba]: Diatonic button accordion (DBA) / melodeon / "box" / accordéon diatonique / diato / etc. Also may later extend to plotting the layouts of other button accordion family instruments like concertinas. [^pop]: Be careful opening this link on mobile browsers, I've gotten annoying / potentially dangerous pop-ups.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

melplot-0.1.0.dev2.tar.gz (8.5 kB view hashes)

Uploaded source

Built Distribution

melplot-0.1.0.dev2-py2.py3-none-any.whl (7.8 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page