๐ Issue dependency visualizer, a.k.a. "auto-roadmap".
Introduction
dependency visualizer (auto roadmap)
depviz
aggregates tasks from multiple projects and generates visual representations (graphs) of the dependencies.
inspired by this discussion: jbenet/random-ideas#37
Demo
Supported providers
Depviz aggregates the entities of multiple providers into 3 generic ones.
Supported providers:
- GitHub
- Task: Issue, Pull Request, Milestone
- Owner: TODO
- Topic: TODO
- GitLab: (planned)
- Jira (planned)
- Trello (planned)
TODO: detailed mapping table
Under the hood
Depviz entities
There are 3 entities:
- A
Task
that have a real life cycle: opened->closed - An
Owner
which only contains things - A
Topic
which allows categorizing/tagging other things
Examples:
- a
Milestone
is aDepviz Task
, because even if it contains other tasks, it also has a clearly defined lifecycle: to be closed when every children tasks are finished. - a
Repository
is aDepviz Owner
because even if you can archive a repository, it's not the normal lifecycle, and will most of the time be unrelated with the amount of tasks done
A Task
can be considered as something directly actionnable, or indirectly/automatically closable based on a business rule.
More info here: ./api/dvmodel.proto
Task
should have:
- a unique
ID
: canonical URL - a
LocalID
: human-readable identifier - a
Title
: not necessarily unique - a
Kind
:Issue
,Pull Request
,Milestone
,Epic
,Story
,Card
- a
State
:opened
,in progress
, orclosed
- an
Owner
: see below - a
Driver
:GitHub
,GitLab
,Jira
,Trello
may have:
- other relationships:
Author
,Milestone
,Assignees
,Reviewers
,Label
,Dependencies
,Dependents
,Related
,Parts
,Parents
- other metadata:
Description
- other states:
Locked
- timestamps:
Created
,Updated
,Due
,Completed
- metrics:
NumDownvotes
,NumUpvotes
,NumComments
Owner
should have:
- a unique
ID
: canonical URL - a
LocalID
: human-readable identifier - a
Title
: not necessarily unique - a
Kind
:User
,Organization
,Team
,Repo
,Provider
- a
Driver
:GitHub
,GitLab
,Jira
,Trello
may have:
- an
Owner
- other states:
Fork
- other metadata:
Homepage
,Description
,Avatar
,Fullname
,Shortname
- timestamps:
Created
,Updated
Topic
should have:
- a unique
ID
: canonical URL - a
LocalID
: human-readable identifier - a
Title
: not necessarily unique - a
Kind
:Label
- a
Driver
:GitHub
,GitLab
,Jira
,Trello
may have:
- an
Owner
: see above - other metadata:
Color
,Description
Install
Download a release
https://github.com/moul/depviz/releases
Install With Golang
go get moul.io/depviz/cmd/depviz
Using brew
$ brew install moul/moul/depviz
Usage
TODO
License
ยฉ 2018-2019 Manfred Touron
Licensed under the Apache License, Version 2.0 (LICENSE-APACHE
) or the MIT license (LICENSE-MIT
), at your option. See the COPYRIGHT
file for more details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)