Phabricator – A rare labeling of “best software”
At work I elaborated code review tools, and one of the tools I checked was Phabricator. I was astonished. I have labeled it the best software I have ever seen.
After installation it already welcomed me with configuration insufficiency warnings – superb error handling. A list of the issues, each with a title and short description. Each one linking to an issue page with a more elaborative description, current configuration values, suggested ways to fix the issue, and links to more detailed documentation. I was very pleased already.
The interface is clean and descriptive. It seems very modularized and configurable. It is not just for code-review by the way. Included applications include repository hosting, wiki, issue tracker, communication, document/file hosting, pastebin … I was also pleased to see Persona alongside OpenID and LDAP (amongst others) as authentication methods.
In the end I was not able to find everything I was looking for – namely default main-page layout (for all users) – but I am still astonished and enjoying it. Just imagine a world of only great software – I finally saw a glimpse of it! 🙂
The application is written in PHP – one could say surprisingly enough. Of course PHP can be used awfully, or as in this case using the featured structural manners of classes, namespaces etc. to follow guidelines and rules into a well structured and modularized code-base. The performance seemed quite good as well, for the size of the application.
You can also see the developers had fun implementing / made themselves some fun. From interesting wording of buttons (the code review action button – you select the action from drop-down, optionally provide a description text (comment), and then click the button to submit your action/changes – is named “Clowncopterize”. An artificial word for sure. The command line tool arc has an action anist, with a help/description text of “there is only one way to find out …” – and if you install, I encourage you to find out. If you combine the two command words maybe you can guess what will happen. 🙂
I also have a strong feeling such great and fun software can only happen in an FOSS space – even if Phabricator is provided by facebook as well.