Skip to content

pmdoll/planviz

 
 

Repository files navigation

planviz

Planning Network Visualization

As this is a pre-release version planviz. You can clone it (and the required libraries) to build it locally.

Example PLANVIZ visualization

Check out the CHANGELOG

News

The DOLL team (including Paul Robertson, Dan Cerys, Prakash Manghwani, and Tom Marble) recently demoed PLANVIZ in the talk Model based programming in PAMELA at Clojure/west. Check out the ClojureTV video and the slides.

For more details visit the PAMELA project page.

Documentation

The planviz application is part of the PAMELA suite of tools.

Building

Here are the steps to build planviz locally:

  1. Install RabbitMQ Server
  • For Debian GNU/Linux systems simply do

    # apt-get install rabbitmq-server

  1. Install boot. Please note the steps to install boot.properties and profile.boot to your ~/.boot/ directory (so that the cider deftask is available).

    $ boot --version
    #http://boot-clj.com
    #Wed Apr 13 13:18:30 CDT 2016
    BOOT_CLOJURE_NAME=org.clojure/clojure
    BOOT_CLOJURE_VERSION=1.8.0
    BOOT_VERSION=2.5.5
    $
    
  2. Clone and install plan-schema

    $ mkdir -p ~/src/github/dollabs
    $ cd ~/src/github/dollabs
    $ git clone https://github.com/dollabs/plan-schema
    $ cd plan-schema
    $ boot local
    
  3. Clone and install webtasks

    $ cd ..
    $ git clone https://github.com/dollabs/webtasks
    $ cd webtasks
    $ boot local
    
  4. Clone and install webkeys

    $ cd ..
    $ git clone https://github.com/dollabs/webkeys
    $ cd webkeys
    $ boot local
    
  5. Clone and build planviz (NOTE: you may see various warnings like WARNING: Use of undeclared Var planviz.components/x21694 at line 42 that do not prevent building)

    $ cd ..
    $ git clone https://github.com/dollabs/planviz
    $ cd planviz
    $ boot build-jar
    
  6. Run the demo

  • NOTE this config uses the example plans from plan-schema
  • For convenience you may add the planviz/bin directory to your PATH (or simply refer to the startup script as ./bin/planviz).
  • Note that the single argument to planviz FOO.edn refers to a configuration file with details in config/FOO.edn. Alternatively you can give a full path to an *.edn file as the sole argument to planviz (i.e. so it can be located elsewhere than in the config/ directory).
$ planviz demo.edn
  1. After you see PLANVIZ server ready you can open a (or several) browser windows to http://localhost:8080

    $ open http://localhost:8080
    

Commands (a la IRC)

  • /who see which clients are connected
  • /whoami see the host and port of your browser connection (remote id)
  • /msg user ... private message for user
  • /nick firefox set nickname for this connection
  • /list list available plans
  • /show v1.tpn show a specific plan
  • /next view the next plan
  • /prev view the previous plan
  • /manual manual mode (do not respond to other user updates)
  • /auto automatic mode (highlight relevent selections from others)
  • /export export current plan as SVG
  • /? help
  • free format text broadcast message

Key bindings

  • z or = (zoom-in)
  • x or - (zoom-out)
  • ArrowRight (pan-right)
  • ArrowLeft (pan-left)
  • ArrowUp (pan-up)
  • ArrowDown (pan-down)
  • A-ArrowRight or C-ArrowRight (next-plan) use Alt- or Control- key
  • A-ArrowLeft or C-ArrowLeft (prev-plan)
  • 1 (reset) zoom out to 100%
  • p (list-plans)

Development status and Contributing

Please see CONTRIBUTING for details on how to make a contribution.

NOTE The tests are (obviously) incomplete!

Copyright and license

Copyright © 2016 Dynamic Object Language Labs Inc.

Licensed under the Apache License 2.0 LICENSE

Acknowledgement and Disclaimer

This work was supported by Contract FA8650-11-C-7191 with the US Defense Advanced Research Projects Agency (DARPA) and the Air Force Research Laboratory. The views expressed are those of the authors and do not reflect the official policy or position of the Department of Defense or the U.S. Government.

About

Planning Network Visualization

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Clojure 91.6%
  • CSS 7.7%
  • Other 0.7%