This is a high level outline of some our long-term plans for Phabricator (like a roadmap, but looking far into the future). It lists things we plan to build eventually, over the course of **many years**.
This document spans an enormous amount of work and includes projects which will not be completed for many years. In some cases, we won't //start// building these projects for many years. By the time we start, some of these projects won't make sense anymore, so we may never build them or may build something very different than what we describe here.
This is not a prioritization or scheduling document. It doesn't tell you what we'll build next or what we'll build soon, just what we intend to build eventually. For near-term term planning, see the [[ Roadmap ]].
---
Applications
=====
Almanac
-----
Almanac is a service directory, like an augmented version of DNS. You ask it for "db.service.company.com" and it returns a record which includes addresses and may include other information (datacenters, read/write availability, etc).
Almanac also serves as a device inventory for tracking physical devices (like hosts or phones).
Almanac is an important component of building Phabricator clusters. Almanac is currently used in production in the Phacility cluster.
- We plan to generally make Almanac more user-friendly.
- We'd eventually like to integrate device status reporting/monitoring into Almanac (e.g., monitor load on hosts).
Audit
-----
Audit allows users to preform post-publish code review.
Audit shipped in 2011. Audit is a core application.
- We generally plan to improve audit workflows, but don't have any major changes planned.
Badges
-----
Badges will be a UI hint that can designate special users (like administrators or employees) and award users for certain activity.
Badges are a new application with no code written.
- (T6526) We plan to implement badges.
Calendar
-----
Calendar allows users to notify other users of availability, so no one expects you to review code while you're on vacation.
Calendar is a prototype application.
- We plan to make Calendar useful for scheduling meetings and integrate it with other calendars (like Google Calendar).
Chatlog
-----
Chatlog records the history of an IRC chatroom or other similar chat.
Chatlog is a deprecated prototype application.
- (T6875) We plan to remove Chatlog.
Conduit
-----
Conduit is the Phabricator API.
We shipped Conduit in 2011. It is a core application.
- (T5955) We plan to make Conduit easier to use and improve support for binary data.
- (T5873) For compatibility, Conduit has lagged behind other infrastructure. We plan to make major changes to Conduit to modernize it.
Conpherence
-----
Conpherence is a messaging/chat application.
We shipped Conpherence in 2012. It is a core application.
- (T7565) We plan to add chatrooms and other features to Conpherence to make it a more complete messaging application.
- We plan to improve API access to Conpherence.
Dashboards
-----
Dashboards allow users to collect information from other applications in one place.
We shipped Dashboards in 2013. It is a core application.
- We plan to improve parameterization for dashboards, so you can write panels which depend on context like the current viewer.
- (T3583) We plan to completely replace the homepage with dashboards.
Daemons
-----
Daemons run background tasks.
We shipped Daemons in 2011. It is a core application.
- We have no major plans to change daemons.
Differential
-----
Differential is a code review application.
We shipped Differential in 2011. It is a core application.
- (T182) We plan to let users commit revisions directly from Differential.
- (T5000, etc) We plan to generally improve integration between Differential and VCS operations.
Diffusion
-----
Diffusion is a repository management application.
We shipped Diffusion in 2011. It is a core application.
- Generally, we aren't happy with some aspects of the Diffusion UI and UX, and plan to do work to improve them.
Diviner
-----
Diviner is a documentation generator.
We shipped Diviner in 2011, approximately. It is a core application.
- (T4558) We plan to make Diviner more useful to third parties. It is currently mostly useful only for generating Phabricator documentation.
Drydock
-----
Drydock is a software resource manager. Particularly, Drydock can create and destroy working copies in a scalable way that other processes (like test and build workflows) can leverage and reuse.
Drydock is a prototype with major missing functionality.
- We plan to make Drydock work as designed.
Facts
-----
Facts is an ETL/reporting pipeline.
Facts is a prototype with major missing functionality.
- (T1562) We plan to make Facts work as designed.
Files
-----
Files is a file storage application.
We shipped Files in 2011. It is a core application.
- We have no major plans to change Files.
Feed
-----
Feed is an event log which allows you to review activity across an install.
We shipped Feed in 2011. It is a core application.
- (T5726) We plan to make it easier to use Feed to publish events into remote systems.
Fund
-----
Fund is a donation/funding application similar to Kickstarter. It was developed primarily to test payments infrastructure.
Fund is a prototype application.
- We have no specific plans around Fund.
Harbormaster
-----
Harbormaster is a build/CI pipeline and integration tool. It will be able to either run tests on an existing external test system or host tests itself. It can report test results from other systems.
Harbormaster is a prototype application with major missing functionality.
- (T1049) We plan to make Harbormaster work as designed.
Home
-----
Legalpad
-----
Maniphest
-----
MetaMTA
-----
Nuance
-----
OAuth Server
-----
Owners
-----
Passphrase
-----
Paste
-----
Phlux
-----
Phame
-----
Pholio
-----
Phortune
-----
Phragment
-----
Phrequent
-----
Phriction
-----
Projects
-----
Releeph
-----
Repositories
-----
Search
-----
Settings
-----
Slowvote
-----
Tokens
-----
Typeahead
-----
Ecosystem
=====
Platform
-----
Infrastructure
=====
Internationalization
-----
Scalability / Availability
-----
Performance
-----
Phacility
======