Here is my open-source drama to be fully transparent about criticism addressed to me.

Summary: Colorette author dislikes that I fork his project.

Threat with how I see this problem (let’s discuss open-source ethics) ↓
Colorette is chalk replacement for color support detection and color output to terminal.

A year ago, I moved all my projects to Colorette, send PR to the project and promote it in my accounts.
Recently Colorette’s author released 2.x and broke API. He disabled colors support detection for top-level functions, made API not very usable for most popular use case.

People tried to politely convince him to revert it. He refused (threat was cleaned)
github.com/jorgebucaran/c…
Since it was not possible to convince him, I created a new project, Nano Colors, where mixed colorette and kleur (another great color formatting library).

github.com/ai/nanocolors

Then I moved all my projects from Colorette to Nano Colors.
When Colorette’s author lost his main user, he reverted API changes.

But he reverted it in patch release, causing breaking changes.

Two impulsive actions lost my trust in him as a maintainer.
I mentioned him in README.md and add link to Colorette (and kleur).

Add his name to LICENSE.

Recently, with a help @JakubJirutka I rebased Nano Colors history on top of Colorette commits.
@JakubJirutka We even agreed with Colorette’s author of how I will mention him in README.md and LICENSE.

I promised him, that I will not replace Colorette to Nano Colores in non-mine projects.
@JakubJirutka I send PRs to Babel and ESLint replacing big and slow Chalk (not Colorette) to Nano Colors.

And he came to this PRs and claimed me in “rebranding of his work”.

github.com/babel/babel/pu…
@JakubJirutka “Rebranding” claim is very questionable. Nano Colors has many changes. Vite HRM, for instance, decided to moved to Nano Colors because I fixed old well-known Colorette bug.

Here is a full list of Nano Colors changes:
github.com/ai/nanocolors/… Image
@JakubJirutka Of course, so small libraries inspired by each other will share the same code.

Nano Colors: github.com/ai/nanocolors/…
kleur: github.com/lukeed/kleur/b…
Colorette: github.com/jorgebucaran/c…
@JakubJirutka Benchmark is the best prove of systemic changes in Nano Colors.

github.com/ai/nanocolors#… Image
@JakubJirutka The sad part is that his actions blocked Babel’s and ESLint’s PRs.
github.com/babel/babel/pu…

But don’t blame Colorette author (in PRs, Twitter, anywhere). I understand his feelings.

However, I do not share his reaction. Competition is a key if evolution (with respect to authors).
@JakubJirutka Now the conflict flipped upside down.

Colorette’a author back-ported Nano Colors performance optimization. I do not mind about it, since it is fit open-source spirit.

But when I ask him to also mentioned me in docs, he refused 😔
github.com/jorgebucaran/c…

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Sitnik the Developer

Sitnik the Developer Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(