Skip to content

Latest commit

 

History

History
112 lines (69 loc) · 6.42 KB

README.md

File metadata and controls

112 lines (69 loc) · 6.42 KB

Stableviews UI

An alternate presentation layer for Topicmaps authored in DeepaMehta 4.

Getting Started

You can find the most recent builds of DeepaMehta 4.7 and the two required modules/plugins on http://download.deepamehta.de.

After working in and having created a DeepaMehta 4 Topicmap you can use the ``View in stableviews'' button in the lower left corner of the Webclient. Clicking on it you'll open the current map in the stableviews ui.

Development Roadmap (Initially, Partially Outdated)

To become an alternate, command-line controllable presentation layer...

Current & former features include:

  • Load a Topicmap via open <name>
  • Free placement and panning (allowing to interact with the loaded topic map without persistence)
  • Multiple selection of topics using the SHIFT key with (offering event handling for the controller)
  • Zooming in and out of the presented network (graph panel)
  • hide and show assocs command for toggling the display of all associations
  • hide and show assocs command for toggling the display of all topics of a certain type - (not yet implemented)
  • Full text search across the complete databse with selection between all results to reveal/load a hidden topic into the loaded Topicmap - (not yet implemented)

The aim is (as always) that this becomes an easy extendable codebase for developers and that it is maximal customizable for designers.

Writing back and persisting the re-arrangements, as well as writing changes in view configuration for single topics, persisting a more complex view state or being able to create simple note topics is all "future is unknown" stuff.

Ideal, differing from the more general approach of the dm4-webclient, this presentation layer will try to deliver satisfaction for information processing tasks, including (but not limited to):

  • iterative refinement for finding existing topics (or expand on what became known as faceted browsing allowing for combination of parameters/facets),
  • comparison of "details" (just topics for now but later) of elements in your personal graph-like dataset
  • feel of immediacy for users when re-arranging their view should always be maintained

For a more detailed explanation see section "Details on differences" further down.

Similar to the original dm4-webclient module this codebase aims at:

  • DONE - load & edit maps: load stable_views for users of any known dm/x platform (focusing on free placement)
  • presentation & action: let users search, visualize and explore elements of their personal graph-data database
  • DONE - modular architecture: in terms of the JavaScript AMD definition (e.g. requirejs.org)
  • become extendable: allow for JavaScript plugins to take over rendering
  • OK - stay cusomizable: allow designers for as much CSS customizations as possible
  • target bigger-screen devices: no smaller then tablet-sized screens will be targeted

Inspiration

The Topicmaps UI by Jörg Richter (@jri).

With this interface we draw upon the knowledge on humans visual and spatial memory. Furthermore we think that an item "is" or "is best described" through the relations to other items, its relation it is "seen" (or understood) in. To be able do meaningful research with this cognitive tool we believe that this user interface needs to allow users of free placement and needs to provide stable geometries.

Challenges

At best, we are able to address the following, more general challenges for such UI:

  • comparison: e.g. allow to compare details of any two given topics
  • ACCOMPLISHED - multi select: allow to select and trigger commands on a set of elements
  • query-ui: allow for iterative refinement of "Search Results", e.g. in forms of "Search Buckets"
  • IN PROGRESS - command line: text based interaction to control the ui (search and reveal topics in maps, filter in maps, search and load maps, "mail jri")
  • MANUALLY DO'ABLE - themes: allow to switch between many CSS definitions
  • tiled-windows: enable users to tile screen space wherever possible

Description of difference

The difference and focus of UI research in this code repository regarding the dm4-webclient is:

  • Do not aim at being a generic solution (straightaway) but first become a configurable one
    (looking at you: topic and association types)

  • Aim at an immediate control feel for users manipulating their view

  • Enable users multi-dimensional filtering of infos (faceted navigation)
    a.k.a. introduce visualize aspects of a query which allows iterative refinement
    therefore: design stuff that directly represents a semi-structured and/or structured query and
    think of how various result-sets may be represented

  • Facilitate comparison of deep information (the "teapot" of UIs for information processing tasks / infoviz-tools)

  • Try to achieve something like reversibility of commands on infos (Undo/Redo)
    e.g. try to implement command pattern . (though this may be just too much of an effort..)

  • Design "Workspaces" as explicit (and not necessarily implicit) places in regards to "Maps"

  • Provide infrastructure to personalize client-side renderings on per user and domain base
    in terms of: color-palette active, gui-theme loaded and preferred rendering settings (map, tree)

  • Operate with per-user configuration of all presentations settings (color scheme, fonts, shapes, etc.)

  • Tiling areas in a map? How would you imagine?

Installation

After cloning, packaging and installing this DeepaMehta 4 bundle you need to browse /de.mikromedia.stableviews on your DeepaMehta 4 installation to start loading your existing topicmaps into this interface via the open <Nr>-commands.

Addendum

I am curious and still want to get to know more about the limits of visual sense-making. To be able to get there i would like to develop this GUI in a highly connective and collaborative way. I herewith seek for your help in making this possible. Please help to think through some of the details and please think about contributing anything from sketches, requirements or wishes up to code or styles.

Everyone is welcome!

Cheers!


Author: Malte Reißig
Berlin <-> Leipzig, 2014-2016