# Roadmap This document describes currently planned features and events related to the dehub project. It's intention is to help prioritize work. There are no dates set, only a sequence of milestones and the requirements to hit them. ## Milestone: Be able to add other developers to the project * Coalesce command * Fast-forward perms on branches * Authorship in commit messages * README with a "Getting Started" section ## Milestone: Versions * Tag commits * Add dehub version to the SPEC, make binary aware of it * Figure out a release system? ## Milestone: Enough polish to show off the project * Maybe coalesce the `accessctl`, `fs`, and `sigcred` packages back into the root "dehub" package. * Polish all error messages * Polish commands - New flag system, some kind of interactivity support (e.g. user doesn't specify required argument, give them a prompt on the CLI to input it rather than an error). This is partially done, in that a new flag system has been started. Needs further work. - Review flags, probably make some of them into positional arguments, document everything better. - Possibly save state locally in order to speed things along, such as "account id" which probably isn't going to change often for a user. * HTTP docs - Some kind of addition to the docker server to auto-serve md files. - Reorganize all the md files under a `docs` directory, except the README. - Make sure linking between documents works. * More/better tests? ## Milestone: IPFS support * Big ol' question mark on this one. ## Milestone: Minimal plugin support * SPEC and implement. Things which should be pluggable, initially: - Conditions - Signifiers ## Milestone: Minimal notifications support * Some way to store notification settings locally, and run a command which shows a sequence of events since the last time you ran it. - The command should keep a history of all of its outputs, and allow the user to see that history (in case they run the command, then clear the output by accident). - The user should be able to specifically get notifications on threads they're a part of, threads by branch name pattern, files by path pattern, and keywords in commit messages.