rbd is dead, long life rfd!
Tags: javascript, react, news, showdev
Published: 2022-02-25 05:26:18

> 📢 `@react-forked/dnd` is now [`@hello-pangea/dnd`](https://github.com/hello-pangea/dnd). For more details: https://github.com/hello-pangea/dnd/issues/408

---

> **TL;DR**
> [`react-beautiful-dnd`](https://github.com/atlassian/react-beautiful-dnd) a.k.a. `rbd` isn’t actively maintained anymore. I’ve decided to fork the project to give it a second life. It’s called [`@react-forked/dnd`](https://github.com/react-forked/dnd) or `rfd`. Try it!

---

## The discovery 🤩

A year and half ago, I was looking for a drag and drop library with an excellent user experience. After multiple queries through my favorite search engine, I finally found it!

I discovered [`react-beautiful-dnd`](https://github.com/atlassian/react-beautiful-dnd) (`rbd`). I was impressed (and still is) by how natural it felt to drag an element on the screen using this library.

![rbd thumbs up kid](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fhppe4z5bh430j3ku8u4.gif)

Thanks to the dedication and passionate work of the author, maintainers and the community of `rbd`, this well-crafted library lets us integrate amazing drag and drop behavior to our applications. It’s easy to use and easy to implement in any `react` codebase. :tada:

But like all good libraries it has its limitations. For examples it does not [support trees](https://github.com/atlassian/react-beautiful-dnd/issues/1547) or [grid layout](https://github.com/atlassian/react-beautiful-dnd/issues/316) out-of-the-box. It’s perfect when we implement simple drag and drop behaviors, but it can become a blocker when we need more complex interactions.

At the time I was hoping someone would tackle those issues, by adding new features in future releases.

## The honeymoon phase was over 💔

I had open a [pull request to allow react v17](https://github.com/atlassian/react-beautiful-dnd/pull/2035) as a peer dependencies and got no answer. I realized that something was off. The repo seemed to have been abandoned. No commits were added to the main branch and issues were piling up without being answered.

I decided to open [this issue](https://github.com/atlassian/react-beautiful-dnd/issues/2037) to ask what was happening and suggested that it might be time for the community to take over and maintain the project. No one answered, so I decided to fork of the library and called it [`@react-forked/dnd`](https://github.com/react-forked/dnd) (`rfd`).

The first thing I wanted to tackle was something the maintainer of `rbd` also [planned](https://github.com/atlassian/react-beautiful-dnd/issues/982) to do. It was [to migrate the codebase](https://github.com/react-forked/dnd/issues/8) from [`Flow`](https://flow.org/) to [`TypeScript`](https://www.typescriptlang.org/).

The principal reason was that the community adoption of `TypeScript` was [constantly growing](https://2020.stateofjs.com/en-US/technologies/javascript-flavors/) year after year compared to `Flow` and I was personally more comfortable with `TypeScript`.

I started the migration more than a year ago. It was very challenging and after a couple of weeks working on the migration I started to lose interest. It was taking a lot of my time and I was still hoping that someone would come back to keep maintaining `rbd`.

I recently realized that I was wrong when I saw the following :point_down: added to the `README.md` of the `rbd` repo.

---

> ### ⚠️ Maintenance & support
> 
> This library continues to be relied upon heavily by Atlassian products, but we are focused on other priorities right now and have no current plans for further feature development or improvements.
> 
> It will continue to be here on GitHub and we will still make critical updates (e.g. security fixes, if any) as required, but will not be actively monitoring or replying to issues and pull requests.
> 
> We recommend that you don’t raise issues or pull requests, as they will not be reviewed or actioned until further notice.

---

It gave me the motivation to finish what I’ve started and it’s exactly what I’ve done in the past weeks.

## Time for a second life 🐣

This blog post is to announce the release of `rfd` version `v14.0.0` and to let you know what to expect from this new chapter in the life of the library!

What does this new version includes? To be honest not that much. The goal was to have a fresh start with a `TypeScript` codebase and the `latest` version of most libraries.

 - Feature parity (except for [Flow support](https://github.com/react-forked/dnd/issues/132))
 - Codebase migrated to `TypeScript`
 - Libraries upgraded
 - Tested with `react` v16 and v17
 - Changed all `data-rbd-*` to `data-rfd-*`

## What’s next? 👀

I plan to maintain this amazing library, by making sure its dependencies and peer dependencies are up to date, by adding new features and by making sure bugs are fixed as soon as possible.

I’ll have a roadmap of what I plan to work on in the upcoming weeks and I’ll take the time go over [the issues](https://github.com/atlassian/react-beautiful-dnd/issues) on the `rbd` repo to help plan this.

I’ll also try to leverage [the discussions tab](https://docs.github.com/en/discussions) to give you as much visibility as I can on what is being worked on, to gather your feedback and to have a place for the community to share and discuss.

In conclusion, thank you again for the author of this amazing library. I have big shoes to fill and I’ll need to gain your trust, but I hope to make this new journey a success. Let's see where it takes us!

Here’s the repo: https://github.com/react-forked/dnd