I have created a usable library for decoding Standard MIDI Files in Dart. I am currently working on implementing the ability to write out to a file, but I hope this should be useful, as I have noticed a surprising lack of libraries for parsing SMF.
Repo can be found
here
Dart package is
here
Hope this is useful