tonal
tsx
Our great sponsors
tonal | tsx | |
---|---|---|
11 | 23 | |
3,688 | 7,633 | |
26.0% | 7.7% | |
7.3 | 9.1 | |
5 days ago | 8 days ago | |
TypeScript | TypeScript | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tonal
-
Tonal.js: Functional music theory lib
They're using objects, including arrays [1], so I think they would have been more precise to say that they're using objects and arrays as simple data structures rather than using OO features like inheritance and mutation.
[1] https://github.com/tonaljs/tonal/blob/main/packages/chord/in...
-
What is this scale called?
It's not on this list, but it's a cool list to check out either way
-
What is your must have npm package on any given project?
I'm working on a music project and both tonejs and tonal are incredible projects.
-
Coltrane: A music theory library with a command-line interface
Regarding the "Music Theory library" aspect, note that the CLI tool demonstrates use of the underlying Ruby library which has documentation here:
* https://github.com/pedrozath/coltrane/wiki/Core-music-theory...
Additionally, the author wrote a post about the motivation for creating the library but it's a little difficult to find via the (now broken) link in the README, so here is a direct link to the archived page on the Wayback Machine:
* https://web.archive.org/web/20170714063625/https://medium.co...
If anyone is interested in a similar music theory library for Javascript[0] I've had some success with this:
* Tonal / Tonal.js https://github.com/tonaljs/tonal
[0] Or, in a pinch, even with a Godot 4 web export as I did for my (very incomplete) "AI and Games" Game Jam entry: https://rancidbacon.itch.io/the-conductor (For reasons far too convoluted to go into now.)
-
Scales - Practise all of them, or just a few each day?
There are many hundreds of scale types, here's a list of many of them and that's just a single key. Let's say there's 200 scales times 12 for each key, that's 2400 times up and down the piano. There are actually much more than 200 scales though!
-
I want to use this module in my code but can't figure out how.
I found a module that is perfect for what I'm trying to create, (a simple piano that you can select keys on to find out which chord it gives), and am trying to use https://github.com/tonaljs/tonal .
-
Anyone know of a music theory library for C#?
Agree with the representation, you can really bury yourself in complexity if you're not careful. Have you taken a look at any of the JS libraries like tonal or MusicTheoryJS?
- Max 4 Live, or standalone Max 8?
-
Humble beginnings of my first open source npm package: The Music Builder
Here's how tonal.js does it: https://github.com/tonaljs/tonal/tree/master/packages
-
Do you want to learn music theory?
For the music theory stuff I'm using TonalJS along with my own extensions
tsx
-
Finally, a guide for Node.js and TypeScript and ESM that works
I really enjoy frontend/node/typescript development. I roll my eyes whenever the HN-types complain about CSS or frontend development being a hellhole. Mostly the comments I see seem ignorant or impatient ("Why doesn't this thing work without be bothering to learn it?")
However, the intersection of typescript, nodejs, and ES modules is consistently the most frustrating experience I ever have. Trying to figure out which magic incantation of tsconfig/esbuild/tsc/node options will let me just write code and run it is a fools errand. You might figure something out, and then you try to use Jest and then you descend into madness again.
The biggest tip I can give people is to ditch ts-node and just use (the awkwardly named) tsx https://github.com/privatenumber/tsx, which pretty much just "mostly works" for running Typescript during dev for node.
The problem mostly seems to stem for all the stakeholders being pretty dogmatic to whatever their goals are, rather than the pragmatic option of just meeting people where they are. I really wish the Node, Typescript, Deno/Bun, and maybe some bundler people would come together and figure out how to make this easier for people.
-
ERDIA: TypeORM entity specification documentation tool
If your TypeORM entity is written in TypeScript, you have to run ERDIA using ts-node or tsx as follows.
-
xtsz - a TS / JS file runner with support for HTTP/S imports
Want to import a package / file conveniently from esm.sh or unpkg or directly from a GitHub repo for a one-off script (for example). To do this I created a custom ESBuild plugin to handle HTTP imports - that worked for ,js files. To support running both ESM and CJS, I use tsx.
-
What is your must have npm package on any given project?
I prefer tsx honestly. Nodemon will detect that your using TypeScript and switch from node to ts-node but tsx is a no config necessary version of ts-node that also runs faster. Of course you can configure ts-node to use swc to be faster but then you're playing with config files to get things working.
-
Question about debugging TypeScript
I highly recommend you give this a shot over ts-node
-
Jsx as a general templating language?
Dude I just worked on a PoC a few hours ago. What I did was use ReactDOM's renderToStaticMarkup and tsx to execute the script so I get jsx transpilation on the fly.
-
Thoughts about Deno?
I’ve been trying to adopt Deno into new projects, but I find Node through tsx good enough.
-
Will nodeJs ever have out of the box typescript support?
try tsx. it has support for watch mode and works great with esm module projects.
-
Why is this so hard to do? Help
This is the answer: https://github.com/esbuild-kit/tsx
-
<3 Deno
Have a look at https://github.com/esbuild-kit/tsx
_tsx is a CLI command (alternative to node) for seamlessly running TypeScript & ESM, in both commonjs & module package types.
It's powered by esbuild so it's insanely fast._
What are some alternatives?
remeda - A utility library for JavaScript and TypeScript.
esbuild-runner - ⚡️ Super-fast on-the-fly transpilation of modern JS, TypeScript and JSX using esbuild
html-midi-player - 🎹 Play and display MIDI files on the web
ts-node - TypeScript execution and REPL for node.js
octave-compass - A tool for exploring musical scales and chords
ts-runtime-comparison - Comparison of Node.js TypeScript runtimes
musescore-theory-plugins - A collection of MuseScore plugins that check species counterpoint, 4-part chorales, intervals, and chords and can automatically create interval and chord ID worksheets.
esno - Alias to `tsx`
minimoon - Cross platform music player.
esbuild-node-tsc - Build your Typescript Node.js projects using blazing fast esbuild
iter-ops-extras - Custom operators for iter-ops
vite - Next generation frontend tooling. It's fast!