https://github.com/replikativ/flechtwerk
flechtwerk provides visualization of commit graphs of CDVCS.
https://github.com/replikativ/flechtwerk
Last synced: 9 months ago
JSON representation
flechtwerk provides visualization of commit graphs of CDVCS.
- Host: GitHub
- URL: https://github.com/replikativ/flechtwerk
- Owner: replikativ
- License: epl-1.0
- Created: 2015-10-11T21:41:13.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-04-14T13:39:44.000Z (almost 10 years ago)
- Last Synced: 2025-03-23T19:39:12.241Z (10 months ago)
- Language: Clojure
- Homepage:
- Size: 110 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
- License: LICENSE
Awesome Lists containing this project
README
#+TITLE: flechtwerk
#+CATEGORY: flechtwerk
#+TAGS: review bug feature research mail
#+TODO: TODO(t) STARTED(s!) | FIXED(f!) DONE(d!)
#+TODO: CANCELED(c@)
#+STARTUP: overview
#+STARTUP: hidestars
**** Overview
=flechtwerk= is a visualization of commit graphs from [[http://github.com/replikativ/replikativ][replikativ]] using [[https://github.com/trifacta/vega][vega]] or [[https://github.com/quil/quil][quil]].
See gorilla example use [[http://viewer.gorilla-repl.org/view.html?source=github&user=replikativ&repo=flechtwerk&path=example.clj][here]].
**** Installation
=flechtwerk= is available at Clojars. Add the following to the =:dependencies= section of your =project.clj= file:
#+BEGIN_SRC Clojure
[io.replikativ/flechtwerk "0.1.1-SNAPSHOT"]
#+END_SRC
**** Gorilla usage
Start a =gorilla= worksheet in your project and add the following:
#+BEGIN_SRC Clojure
(ns harmonious-creek
(:require [gorilla-repl.vega :as v]
[full.async :refer [?]]
[konserve.memory :refer [new-mem-store]]
[flechtwerk.core :as g]
[flechtwerk.graph :as graph]))
(def store (? (new-mem-store (atom (into {} (map (fn [k v] [k v]) (range 17) (repeat {:branch "master"})))))))
(v/vega-view (? (g/vega-commit-graph graph/test-graph :store store)))
#+END_SRC
**** Quil usage
#+BEGIN_SRC Clojure
(ns harmonious-creek
(:require [full.async :refer [?]]
[konserve.memory :refer [new-mem-store]]
[flechtwerk.core :as g]
[flechtwerk.graph :as graph]
[flechtwerk.quilesque :as q]))
(def store (? (new-mem-store (atom (into {} (map (fn [k v] [k v]) (range 17) (repeat {:branch "master"})))))))
(q/sketch (? (g/quil-commit-graph graph/test-graph :store store)))
#+END_SRC
Quit frame via =q=, show commit id via mouse-over and print current frame to a given output-file via =p=.
In ClojureScript it works accordingly, look at demo.cljs and the provided index.html for details.
**** TODOs
***** DONE load and merge branches from store (for colors) :feature:
- State "DONE" from "TODO" [2016-04-10 So 01:01]
***** TODO add smooth edges using bezier :feature:
DEADLINE: <2015-07-27 Mo>
:PROPERTIES:
:Created: [2015-07-23 Do 12:09]
:Associated_file: [[/home/konny/projects/geschichte-gorilla/src/geschichte_gorilla/quilesque.clj]]
:Assigned_to: kordano
:END:
***** DONE add commit ids to vega plots :feature:
CLOSED: [2015-07-16 Do 15:57] DEADLINE: <2015-07-17 Fr>
:LOGBOOK:
- State "DONE" from "TODO" [2015-07-16 Do 15:57]
CLOCK: [2015-07-16 Do 15:46]--[2015-07-16 Do 15:56] => 0:10
:END:
:PROPERTIES:
:Created: [2015-07-16 Do 15:36]
:Assigned_to: kordano
:END:
***** FIXED fix that index-out-of-bound error when new branches are created :bug:
CLOSED: [2015-07-16 Do 13:18] DEADLINE: <2015-07-17 Fr>
:LOGBOOK:
- State "FIXED" from "DONE" [2015-07-16 Do 13:18]
- State "DONE" from "TODO" [2015-07-16 Do 13:18]
CLOCK: [2015-07-16 Do 12:55]--[2015-07-16 Do 13:18] => 0:23
:END:
:PROPERTIES:
:Created: [2015-07-16 Do 12:53]
:Associated_file: [[/home/konny/projects/geschichte-gorilla/src/geschichte_gorilla/graph.clj]]
:Assigned_to: kordano
:END:
****** TODO build graph using quil
****** TODO adust to commit ids in new geschichte version
****** TODO get commit ids on mouseover
****** TODO show branch name at head commits
****** TODO animate force-based build process (quil)
****** TODO draw branches and merges via bezier curves
****** TODO show commit value on click
****** TODO store current frame
**** References
**** License
Copyright © 2016 Konrad Kühne, Christian Weilbach
Distributed under the Eclipse Public License either version 1.0 or (at
your option) any later version.