Turboprop - Toolkit to create accessible component libraries

Hey! Thanks for having a look.
I actually didn’t know about Tails, so it’s nice to see some alternatives around.

Merge is definitely the tool in this library that has gotten the least love, and I have a few scratchpad ideas on how to incorporate configuration, especially with colors, sizes and so on. Will definitely require a bit of experimenting to get it the way I’d like to.

Other than that, I took the freedom of running a few tests against Tails and it gets a few things wrong that Turboprop gets right:

  • Touch utilities are being removed when they shouldn’t.
    Tails.classes(["touch-pan-x", "touch-pan-y", "touch-pinch-zoom"]) results in touch-pinch-zoom when they are actually allowed to be combined.
  • It does not handle Font Variant Numeric classes correctly.
    Tails.classes(["normal-nums", "tabular-nums", "diagonal-fractions"]) returns "normal-nums tabular-nums diagonal-fractions" where normal-nums and tabular-nums conflict.
  • Negative values aren’t handled correctly.
    Tails.classes(["-top-12", "-top-2000"]) returns -top-12 -top-2000.
  • Arbitrary modifiers don’t seem to be supported.
    Tails.classes("[&[data-open]]:underline [&[data-open]]:line-through") returns both classes when it should not.

Not to discredit Zach’s work of course, I’d love to push each other with this to create better stuff :slight_smile:

1 Like