It’s been out for a while, but hasn’t gotten a lot of attention. Facebook released Phabricator earlier this summer, an open source collaboration tool for development teams. It’s an early release, but already in use by more than 500 engineers at Facebook for normal review, development and sharing of code.
Development of Phabricator is spearheaded by Facebook’s Evan Priestley and is being done on (where else?) the Phabricator.org Web site.
What is Phabricator?
Phabricator is Facebook’s in-house suite of Web applications for its engineers to write, review and share source code. It includes workflow tools, utilities and more.
Actually, Phabricator does go beyond the Web with a set of command-line tools called Arcanist. Developers can use it to run unit tests, merge changes, check for syntax errors in code and even extend Arcanist to add new commands.
Some of the noteworthy components in Phabricator include Maniphest, Herald and Diffusion. Maniphest is a take on bug tracking that might be a bit more user friendly than entrenched open source tools like Bugzilla. Herald is a tool that allows developers to create filters to notify them when objects are created or updated. For example, if you want to be notified of revisions even if you’re not on the CC list. Diffusion is Phabricator’s repository browser for exploring Git and SVN repositories, and it may be adding Mercurial support in the future.
One thing that’s interesting, however, is that Phabricator has no real-time chat features at all. Instead, developers are directed to IRC to discuss issues with Phabricator.
Phabricator is self-hosting, so if you want to jump into Phabricator development you can just log into Phabricator.org with a GitHub or Facebook account. This also lets interested developers get a look at Phabricator without actually having to install it themselves. But if you really want to dig in and host your own, it’s on GitHub now. It is in an early release state, however. Phabricator is under the Apache 2.0 license, so companies should be able to use it for nearly any project without much worry over licensing issues.
The Road Ahead
The big question on my mind about Phabricator is where is it going? The roadmap and status document on Phabricator.org tries to answer that. According to the roadmap, the current focus is feature buildout. This includes things like adding support for Mercurial, and improving Maniphest, Phriction and Projects.
Farther out, there’s consideration for building importers to grab information out of other bug trackers and code review tools. While it could make adoption of Phabricator easier, it also could be “a massive timesuck.” Why is lowering the barrier to adoption easier? There’s some consideration of Phabricator’s mission in the roadmap – and whether Facebook might eventually want to develop a revenue model around it. There’s not a long-term vision for Phabricator yet, beyond improving the tool, but don’t be surprised if you start hearing a lot more about it as it matures.