Phabricator: A Powerful, But Inactive, Development Suite

Phabricator: A Powerful, But Inactive, Development Suite

By Pashalis Laoutaris Category: GitHub Alternatives 7 min read

Editor’s Note: This article is part of our definitive guide to GitHub Alternatives. Click here to read the main overview.

Note: Effective June 1, 2021: Phabricator is no longer actively maintained.

Table of Contents

No discussion of development toolchains is complete without mentioning Phabricator. Born inside Facebook and later released as open source, Phabricator was not just a code hosting tool but a massive, integrated suite of web-based software development collaboration tools. It included everything from code review and repository browsing to bug tracking and a wiki.

However, there is a crucial caveat that must be stated upfront: Phacility, the company that maintained Phabricator, ceased operations in May 2021. As a result, the official Phabricator project is no longer actively maintained. This article serves as an educational look into its powerful concepts and its legacy, which is now carried on by a community fork called Phorge.

Key Features at a Glance

Phabricator Homepage

Phabricator’s power came from its set of tightly integrated applications, all designed to work together. Its most famous feature was its unique take on code review.

FeatureDescriptionKey Benefit (Historically)
Differential (Pre-Commit Review)Phabricator’s flagship code review tool. Developers create “revisions” of their changes before pushing them to a shared branch.Catches issues before they ever enter the main codebase, leading to a much cleaner and more stable version history. This is a stark contrast to the post-commit pull request model.
Arcanist (CLI Tool)A powerful command-line interface that deeply integrated with the entire suite, especially Differential (arc diff, arc land).Streamlined the entire development workflow, allowing engineers to create revisions, update them, and land accepted changes from their terminal.
Diffusion (Repo Browser)A polyglot repository browser that supported Git, Subversion (SVN), and Mercurial (Hg) side-by-side in one instance.Provided a single point of entry for organizations that hadn’t fully standardized on a single version control system.
Maniphest (Issue Tracking)A flexible and powerful bug and task tracker that was deeply integrated with code revisions in Differential.Created a seamless link between reported issues, the code changes that fixed them, and the reviews that approved them.

The Phabricator Philosophy: Who Was It For?

Phabricator was built around a strong, opinionated philosophy of structured, pre-commit review. It was designed for large, disciplined engineering organizations that wanted to enforce a rigorous and standardized development process.

It was the ideal choice for:

Large Engineering Teams: Companies like Facebook, Dropbox, and Wikimedia used it to manage the complexity of thousands of engineers working on a shared codebase. Workflow-Centric Organizations: Teams that valued a clean, linear, and always-passing master branch above all else. Command-Line Power Users: The entire workflow was optimized for speed and efficiency through the Arcanist CLI tool.

Phabricator was less about providing a friendly UI and more about providing a powerful, scriptable engine to enforce high engineering standards at scale.

GitHub vs. Phabricator: A Quick Comparison

The philosophical differences between GitHub and Phabricator are profound and represent two different schools of thought on collaboration.

AspectGitHubPhabricator
Code Review ModelPost-Commit Pull Request: Create a branch, commit, push, then open a PR.Pre-Commit Revision: Create a revision locally, get it reviewed, then push (land) it to the main branch.
Primary InteractionWeb UI is central to the workflow.Command Line (Arcanist) is central to the workflow.
Development StatusActively developed, supported, and growing.No longer actively maintained.
Hosting OptionsCloud (SaaS) and Self-hosted (Enterprise)Self-hosted only (and now, entirely self-supported).

Pros and Cons

Phabricator Workboard

Why People Loved Phabricator (The Pros)

Powerful Pre-Commit Workflow: Its biggest strength. This model prevents “bad” code from ever touching the main development branch, which is a huge win for stability. Extremely Fast: The interface, while quirky, was known for being incredibly responsive and fast. Highly Customizable: Tools like Herald (a rule-based trigger engine) allowed for immense automation and customization of workflows. Truly All-in-One: The integration between its applications was deep and powerful, providing a single source of truth for all development activity.

The Drawbacks (Why You Should Not Adopt It Today)

No Longer Maintained: This is the deal-breaker. There are no official security patches, bug fixes, or new features. Running it today for a new project is a significant security and operational risk. Steep Learning Curve: The Arcanist CLI and the pre-commit review concept required significant training and buy-in from the entire team. Complex to Administer: Phabricator was notoriously difficult to set up, configure, and maintain, often requiring a dedicated administrator. Idiosyncratic UI/UX: The user interface was functional but often described as unintuitive and dense compared to modern alternatives.

The Way Forward: Phorge and Further Reading

Phabricator Logo

While Phabricator itself is a closed chapter, its spirit lives on. A community-led fork called Phorge has taken the Phabricator source code and is actively maintaining and developing it. For anyone who was intrigued by the Phabricator workflow, Phorge is the modern, viable path forward.

Phorge - The Community Fork: https://we.phorge.it/ Phabricator Official Website (Archive): https://phabricator.org/ Phacility’s “Ceasing Operations” Announcement: https://admin.phacility.com/phame/post/view/11/phacility_is_winding_down_operations/ Phabricator Source Code (on GitHub, archived): https://github.com/phacility/phabricator

FAQ

Q: Is Phabricator still a viable option for new projects?
A: No, Phabricator is no longer actively maintained, making it a risky choice for new projects due to the lack of security updates and support. Consider using Phorge, its actively maintained community fork, instead.

Q: What is the main difference between Phabricator and GitHub?
A: Phabricator uses a pre-commit review model, where code is reviewed before being pushed to the main branch, while GitHub uses a post-commit pull request model. Phabricator also emphasizes command-line interaction via Arcanist, whereas GitHub focuses on its web UI.

Q: Can I still use Phabricator if I already have it set up?
A: While technically possible, it’s not recommended due to the lack of maintenance and security updates. Migrating to Phorge or another modern alternative is advisable to ensure security and compatibility.

Q: What is Phorge, and how does it relate to Phabricator?
A: Phorge is a community-driven fork of Phabricator, created to continue development and maintenance after Phacility ceased operations. It aims to preserve Phabricator’s core features while adding updates and improvements.

Q: How difficult is it to migrate from Phabricator to Phorge?
A: Migration to Phorge is designed to be straightforward, as it uses the same codebase and database structure. However, you should test the migration thoroughly and consult Phorge’s documentation for specific guidance.

Conclusion

Phabricator was a titan of development tooling, an opinionated and immensely powerful suite that shaped the engineering culture of some of the world’s most influential tech companies. While its official journey has ended, its legacy is undeniable. It stands as a powerful case study in the benefits of a structured, pre-commit review process. For modern teams interested in this philosophy, the torch has been passed to the community-driven Phorge project, which continues to build upon Phabricator’s formidable foundation.


Back to All Posts
Share this post:
Share on Twitter
Share on LinkedIn
Share on Reddit
Share on Facebook
Copy Link
Copied!