-
Notifications
You must be signed in to change notification settings - Fork 227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tonal-fretboard #8
Comments
Hey Dani, Sure, sounds good. As long as I am not quite sure what you mean by 'set' in buildSet? |
Great! Thanks, I would try to write a first implementation. By set I'm basically referring to scales, a collection of unique pitch classes (https://en.wikipedia.org/wiki/Set_theory_(music). It can be used to represent chords. |
This would be a useful module. I'm happy to help as well, -Garrett |
Hi Garret! The first version of the module it's implemented here: https://github.com/danigb/tonal/blob/master/modules/fretboard/index.js It's not published on npm yet. Suggestions and PR welcomed :-) |
Nice, it's looking good. I just though of an interesting idea; a method that takes a chord name and returns an array of objects containing the string and fret number. Could be useful for building chord charts, etc. The logic would have to take into account tuning of course, and nearby chord notes that are within reaching distance of each other.
I'll see if I can come up with something in my fork, -Garrett |
Great Garret! Looking forward a PR ;-) Don't hesitate to ask if you found any trouble. |
If this means I could generate a chord diagrams for arbitrary tuning, then Your work might start an unexpected revolution in pop music. |
The classical tuning is mathematically quite solid but I'm not sure it's optimal for fingers. |
Hi @danigb, I'm working on a browser based project which I would like to incorporate this package with. I'm having a bit of a hard time getting this built correctly for the browser, could you please point me in the right direction? Thanks, -Garrett |
Nevermind, I see now the -Garrett |
Sorry...so many messages. I would like to know though how you would build this package during development? I may be contributing more to this package shortly. -Garrett |
Hi @grimmdude Yes... to many packages. I'm thinking in a way to reduce them and provide a simpler build process. There's a pre-built package in dist folder (but it doesn't include fretboard). The process is done with rollup: see the "build" and "dist" scripts in Hope it helps. |
Thanks @danigb, I think I figured it out. FYI I'm using this along with VexChords to create a guitar chord lookup page here: http://musictheorysite.com/guitar-chord-chart/ That page makes it easier to dial this package in a bit. I submitted a PR, and will probably have more to come. Working on limiting the shapes -G |
Hi @grimmdude The chord lookup page looks terrific! Great job! I tried to create something like this but I never finished it (https://danigb.github.io/tonal-app/) ... Glad to see that some people do! 👍 Thanks for your PR, and sorry for the delay. I still think this module it's a little bit too complex (at least the interface to it) and there's room to improve, so any PR will be more than welcomed ;-) Cheers, |
I just found this issue while scrolling around a bit in tonal and thought of a little tool i made some years back which im planning to revise with tonal (and Vue) |
Same as @martijnmichel. I'd like to share my project https://react-guitar.com. All the music theory stuff is built on top of tonal. Thanks so much for such a great project! |
Love this, nice work Alejandro!
…On Mon, 21 Sep 2020 at 22:49, Alejandro Tardín ***@***.***> wrote:
Same as @martijnmichel <https://github.com/martijnmichel>. I'd like to
share my project https://react-guitar.com. All the music theory stuff is
built on top of tonal. Thanks so much for such a great project!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#8 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AALTMHY3QVAEIHXMZMI474LSG7C5VANCNFSM4CDGS6QQ>
.
|
Nice work! Probably you already know that there's a Projects using tonal section of the readme. PRs to add those projects to the list are welcomed. |
Hey @danigb, just found that opened issue. |
Hi @devboell,
I would like to have a tonal-fretboard module, and I thought maybe we can share some ideas before. The API I was thinking is something like this:
tuning(name)
: return an array of notes with the strings in open position. For example, fortuning('guitar')
it would return['E2', 'A2', 'D3', 'G3', 'B3', 'E4']
. A kind of dictionary of corded instruments tunings.build(tuning, first, last)
: build a fretboard with the given tuning, fromfirst
fret number tolast
fret number. It returns an array of arrays, one for each string.buildSet(tuning, set, first, last)
: the same of above, but nulls instead of note names for the notes that doesn't belong to the set.What do you think? Do you find useful? Anything missing?
Cheers,
Dani
The text was updated successfully, but these errors were encountered: