Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
♻️

Recoil 終了のお知らせ

2025/01/08に公開

Recoil 終了のお知らせ

Recoilが2025年始にarchivedされたようです。
冗長的な書き方をせずにglabal stateを扱えるライブラリだったので、度々使用していましたが、何かしらの影響で開発停止となりました。

This repository has been archived by the owner on Jan 2, 2025. It is now read-only.

https://github.com/facebookexperimental/Recoil

理由を調べてみた

元Metaのメンテナーの方が、以下のようなポストをしていました。
https://x.com/mengdi_en/status/1875916781950468341

翻訳すると、

これは言われていることですが、まったく予想通りです。Meta が Douglas Armstrong を解雇した後、私は Recoil の唯一のメンテナーになりました。その後、私も解雇されました。社内の多数のプロジェクトでまだ使用されていますが、誰も責任を引き継ぎたくありませんでした (これはパフォーマンス レビューではカウントされません)。

大量レイオフの影響で、開発者が居なくなったのが原因と考えられますね…。
"誰も責任を引き継ぎたくありませんでした"というのもMeta社の社内の状況が想像できて辛いところがありますね。


redditでの意見は、以下のような感じでした。
https://www.reddit.com/r/reactjs/comments/1huhqhm/the_recoil_repository_has_been_archived_on_jan_1/

  • 2023年以降コミットがなかったことから、2025年のボードにはすでに「すべてをJotaiに移行する」と書かれていた
  • そもそもRecoilは常に「実験的」とラベル付けされていたため、自己責任で使用するべき
  • 幸い、Jotaiへの切り替えは非常に簡単
  • FacebookがRecoilを「公式React状態管理ライブラリ」として売り込んだことは一度もなかったのに、コミュニティの多くの人が Recoil に飛びついたのはちょっとおかしいといつも思っていました
  • ほとんどの人の考え方は、「これは Facebook の React 用ライブラリなので、公式ライブラリに違いない」というものだったと思います。しかし、基本的には「当社のアプリチームの 1 つがこれを開発し、他のチームも便利だと思ったので公開します」というものでした
  • Reactチームは、これが公式であると主張したり、推奨したりしたことはありませんでした。(むしろ、「当社が推奨する唯一の状態管理ライブラリはReact自体です」と繰り返し引用されています。)
  • まあ、少なくとも私たちにはジョタイがいる。リコイルよ、安らかに。君は、Redux が支配する世界に一筋の太陽のような存在だった。
  • 多くの人が言っているように、Jotaiは軽量で優れた代替品です。また、Recoilの完全な代替品としてZeduxも開発中です。
  • 何だこれ

Recoil自体、実験的に開発されていたもので、他のプロジェクトよりも優先的に開発が停止されてしまう状況だったようですね。
今回のような場合、開発者がMetaの社員でなくとも、OSSとして存続されることはできないもんなんですかね?
しかし、recoilに影響を受けて、似たような、またはさらに発展させたようなライブラリが登場しているので、十分役目を終えたとも言えるのではないでしょうか。

代替のライブラリ

Reactの状態管理ツールとして、今後は何を使用すればいいでしょうか。

jotai

Zeduxというグローバルキャッシュ管理とKeyベースのSnapshot機能を備えた設計に基づいており、Recoilの設計に近いライブラリとなっています。


元メンテナーのMengdi Chenさんは、jotaiをおすすめしています。

https://x.com/mengdi_en/status/1876089360078258646


jotaiの作者であるdaishiさんが、Recoilのarchivedを受けて、jotaiについての記事をまとめています。

https://zenn.dev/dai_shi/articles/14e0451a0fc149

jotaiが誕生した経緯も書いてくれています。
https://blog.axlight.com/posts/how-jotai-was-born/#:~:text=to use Proxies.-,Recoil,-I had been

Discussion