• Stars
    star
    139
  • Rank 257,479 (Top 6 %)
  • Language
    Go
  • License
    Other
  • Created almost 6 years ago
  • Updated 20 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

👓 dependency visualizer for GitHub & GitLab (a.k.a., "auto-roadmap")

Depviz

Depviz

👓 Issue dependency visualizer, a.k.a. "auto-roadmap".

GoDoc License GitHub release Go Report Card CodeFactor Docker Metrics GolangCI Made by Manfred Touron

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

Philosophy

The ultimate goal of this tool is to allow the tech and the non-tech to collaborate seamlessly.

Oftentimes, there are “non-technical project managers” that love tools like Jira and try to define everything, including the delay required. Developers, however, mostly hate Jira-like tools and prefer to focus on small tasks with an easy-to-use interface, like Trello, GitHub issues, GitLab issues.

The idea of depviz is to:

  • link those different tools (aggregate the different sources and find the relationships: find that this exact “Jira user story” belongs to those 5 technical issues on github
  • create various visual ways of displaying this information. Then, we can have a company that has some non-technical project manager only focusing on user stories and their priorities, and devs that focus on tasks and estimate the tasks by themselves (everyone doing what they are good at)
  • in general, help everyone have the overall vision more clear

Target

  • Graphs are “fun” but not very useful yet, a good dependency tool would be like graphviz. The current depviz version makes the graph in something that is more “weight-based”, because nodes will be grouped to make the graph fit the screen. Graphviz is not focused on making things beautiful, but focused on being 100% clear on the dependency. We need a good graph driver that supports this kind of graph.
  • Having options for multiple layouts/graphs.
  • Implementing the PERT method and adding more fields in depviz: due date, difficulty, etc, in order to create graphs for “finding the shortest path”, for example.
  • Improving the UI to improve collaboration (sharing a URL, etc).

Demo

https://depviz-demo.moul.io/

Limited to the following repos: moul/depviz, moul/depviz-test, moul-bot/depviz-test.

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 a Depviz Task, because even if it contains other tasks, it also has a well defined lifecycle: to be closed when every children tasks are finished.
  • a Repository is a Depviz 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 actionable, 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, or closed
  • 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/v3

Using brew

brew install moul/moul/depviz

Usage

TODO

License

© 2018-2021 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)

More Repositories

1

assh

💻 make your ssh client smarter
Go
2,868
star
2

awesome-ssh

💻 A curated list of SSH resources.
2,245
star
3

sshportal

🎩 simple, fun and transparent SSH (and telnet) bastion server
Go
1,693
star
4

quicssh

SSH over QUIC
Go
775
star
5

http2curl

📐 Convert Golang's http.Request to CURL command line
Makefile
704
star
6

node-gitlab

DEPRECATED, see https://github.com/node-gitlab/node-gitlab
JavaScript
474
star
7

protoc-gen-gotemplate

📂 generic protocol generator based on golang's text/template (grpc/protobuf)
Go
430
star
8

gotty-client

🔧 terminal client for GoTTY
Go
296
star
9

golang-repo-template

🌀 A template for creating new Golang + Docker + Canonical Domain + Badges + Dependabot + Renovate + GolangCI-lint + Goreleaser + GitHub Actions + Gitpod + Depaware + Git Hooks + ...
Go
274
star
10

zapgorm2

⚡ zap logging driver for gorm v2
Go
246
star
11

alfred-workflow-gauth

🔑 TOTP - Google Authenticator Workflow for Alfred2 (Two-Factor authentication)
Python
238
star
12

ssh2docker

🐳 standalone SSH server that connects you to your Docker containers
Go
183
star
13

docker-diff

🐳 Compare Docker images
Shell
154
star
14

grpcbin

httpbin like for gRPC
Go
128
star
15

travis-docker

🐳👨 Docker in Travis-CI
Shell
108
star
16

docker-icecast

📻 Icecast 2 in Dockerfile (Docker container, compatible with liquidsoap)
XSLT
103
star
17

iocat

🔧 Socket.io & WebSocket netcat-like utility
CoffeeScript
83
star
18

number-to-words

convert number into words (english, french, italian, roman, spanish, portuguese, belgium, dutch, swedish, polish, russian, iranian, roman, aegean)
Go
73
star
19

awesome-ascii-art

A curated list of ascii-art resources
49
star
20

docker-kernel-builder

🐧 Kernel build environment in Docker
48
star
21

docker-readthedocs

🐳 ReadTheDocs (RTD, read the docs) in docker
Shell
43
star
22

kafka-gateway

🌊 Kafka Gateway (gRPC/protobuf + http/json)
Go
40
star
23

zapgorm

⚡ Zap logger for GORM (support v1 and v2)
Go
38
star
24

retry

🐚 retry shell commands
Makefile
26
star
25

dockerpatch

🐳 Read, write, manipulate, convert & apply filters to Dockerfiles
Go
24
star
26

radioman

🎵 Web radio solution using Liquidsoap and Icecast
Go
21
star
27

dockerself

🐳 runtime self dockerizer
Go
21
star
28

anonuuid

🔧 Anonymize UUIDs outputs (written in Golang)
Go
20
star
29

chizap

⚡️ simple zap logging middleware for go-chi
Go
20
star
30

node-scaleway

🔧 Online Labs API client in Node.js and browser javascript
JavaScript
19
star
31

pb

C#
18
star
32

scaleway-ipxe

💃 custom IPXE config on Scaleway servers
17
star
33

gno-basics

Gnolang smart contract examples
Go
15
star
34

sapin

🎄 draw a beautiful christmas tree in ascii using Golang
Go
14
star
35

totp-keychain

🔒 TOTP cli backed by the OS X keychain
Go
14
star
36

cleanarch

🚿 the clean architecture, optimised for Golang
Go
14
star
37

grpcbin-example

Go
14
star
38

xbmc-remote-keyboard

📹 Send local keyboard presses to a remote XBMC/Kodi through JSON RPC api (javascript, coffee, ncurses)
CoffeeScript
14
star
39

captcha

🦾 a "Completely Automated Public Turing test to tell Computers and Humans Apart" CLI
Go
13
star
40

golang-boilerplate

🔧 Golang project bootstrap
Makefile
13
star
41

zapfilter

⚡💊 advanced filtering for uber's zap logger
Go
13
star
42

scaleway-cli-node

💻 Interract with Scaleway from command line (Mimics Docker CLI)
JavaScript
12
star
43

acl

👮 ACL micro-service (gRPC/protobuf + http/json)
Go
12
star
44

progress

🏗 progress, steps, completion patterns for golang
Go
12
star
45

node-icecast-admin

📻 Icecast admin nodejs library - used for statistics
JavaScript
12
star
46

stegaporn

8========D The art of hiding sensitive data in porn videos
Shell
11
star
47

docker-liquidsoap

📻 Liquidsoap in Docker - compatible with icecast
Dockerfile
11
star
48

pipotron

generic (& funny?) text generator
Go
11
star
49

bot

🤖 my personal bot / virtual assistant (GitHub, Discord, HTTP+gRPC API, Twitter, Coffee, etc)
Go
11
star
50

translator

🎤 Translator micro-service
Go
10
star
51

image-builder

⚠️ ARCHIVED ⚠️
10
star
52

node-leboncoin

🔧 leboncoin.fr nodejs library
CoffeeScript
10
star
53

node-netsoul

Netsoul client - Epitech, Epita, Ionis
JavaScript
9
star
54

internet-status

📶 Check internet connectivity
Go
9
star
55

totp-cli

🔒 TOTP CLI
Go
8
star
56

docker-coreos-img

🐳 CoreOS image in a docker image
Makefile
8
star
57

generate-fake-data

🧬 CLI to generate fake data for testing
Go
8
star
58

euler

🎲 Project Euler in Golang
Go
8
star
59

shikaku

🀄 Shikaku generator
Go
8
star
60

git-ci

♐ git subcommand to interract with CI/CD from command line
Go
8
star
61

nixpkgs

🧔 personal nix config #nixos
Nix
8
star
62

docker-binfmt-register

🐳 Register Binfmt-support in Docker, works with boot2docker to run armhf images
8
star
63

graphman

graph manipulation library in golang (pert, cpm, dijkstra, ...)
Go
8
star
64

3d-stereo-html5

3d anaglyph / stereoscopic html5 canvas viewer
8
star
65

libmusic

Manipulate Music in Golang
Go
8
star
66

converter

✂️ multiformat data conversion
Go
7
star
67

mbin

:neckbeard: plenty of more-or-less useful scripts I use(d)
Python
7
star
68

irccloud-desktop-app

💻 IRC Cloud Desktop Application (irccloud.com)
CSS
7
star
69

cryptoguess

Automatically detect and parse cryptography keys
Go
7
star
70

ascii2svg

Go
7
star
71

conf-du-loose

💀🔫 Hacked
Shell
7
star
72

as-a-service

👨 Me, as a service
Go
7
star
73

pkgman

📱 Package manipulation tool & library (ipa, etc)
Go
7
star
74

drunken-bishop

Drunken Bishop algorithm for Ascii-Art representation of Fingerprint
Makefile
7
star
75

image-tools-v1

⚠️ Archives ⚠️ Image Tools - Scripts to build images on Online Labs
7
star
76

hacker-typing

☠️🏴‍☠️🦜 impress your friends :)
Makefile
7
star
77

port-docker-image

🐳 Script to port Docker image on armhf architecture
Shell
7
star
78

u

🔬 Go common utility functions
Go
7
star
79

go-dl-extract

🐳 "curl | tar xf" as a static binary - ADD compressed tarball url on Docker scratch
Go
6
star
80

godev

A collection of helpers I use during Golang development
Makefile
6
star
81

amiga-ball

AMIGA!!!
HTML
6
star
82

tapas-icecast-analytics

Icecast Web Analytics using Tapas (nodejs)
CoffeeScript
6
star
83

docker-drupal

🐳 run Drupal in Docker
Shell
6
star
84

runcache

🔧 shell command caching
Shell
6
star
85

node-slumber

🔧 Port of Python's slumber library -- (RESTful API library)
CoffeeScript
6
star
86

guilhunize

Speak like Guilhem
Makefile
6
star
87

testman

😎 `go test` wrapper for advanced testing workflows in Go
Go
6
star
88

banner

lightweight Golang ascii-art text generator
Go
6
star
89

node-alfred-workflow

👨 Create Alfred Workflow with NodeJS (wrapper)
Python
6
star
90

awesome

awesome
Go
6
star
91

alfred-workflow-chromecast

👨 Chromecast Workflow for Alfred2
Python
6
star
92

docker-plan9port

🐳 plan9port in Docker
Dockerfile
6
star
93

term.js-cli

🔧 A command line interface client for term.js / tty.js
CoffeeScript
6
star
94

funcenter

function-level middlewares in golang
Go
6
star
95

image-service-travis

💽 WIP Official Travis-CI worker image on Online Labs
Makefile
6
star
96

zapring

💍 In-memory RING buffer backend for the Zap logger
Go
6
star
97

docker-emacs

🐳 run Emacs server in Docker
Emacs Lisp
5
star
98

wiki

✌️ life wiki
5
star
99

comments

GitHub-Based discussions for some posts of my website
HTML
5
star
100

music-paint

paint-based midi controller
Makefile
5
star