2018-10-31: UI/UX task prioritization

Adam, Damian, Mike, Kacper, Craig


  • UI/UX 2018/2019 task prioritization and estimation


  • Tale workspaces
  • Tale-specific data selection
  • Copy on launch/refactor Browse
  • Compose modal
  • Edit/view tale metadata
  • Implement “Home” in Run > Files
  • Extend “external_data” to support move/rename
  • Add Browse/Environments
  • Add Browse/Catalog

ND Availability

  • IT: There’s ~ 5 weeks of work for #1 and #2
  • ND has lots of deliverables/demos in the coming weeks
  • Ideally, Adam/Damian available in early December
  • Now working in 1 week sprints
  • Adam has done most of the file/folder work
  • Even if someone just puts together the templates, we could later add the main logic.

Ramping up Mike

  • Compose modal or edit/view metadata might be a better place to start.
  • Michael could start getting familiarized with HandleBars maybe?
  • Component model is more challenging

Defining tasks

  • Get them into smartsheet as a high-level overview
  • Additional meetings for detailed task estimation

Tale Workspace support

  • Add tab component to “Run” View
  • Add “Interact” tab (current iframe + popout)
  • Add “Files” tab (this is the Tale Workspace)
  • Supported actions: create folder, rename folder/files, upload files
    • Workspace folder already exists on Backend
    • Allows same operations as Home, so similar functionality as current file browser. Will need to call API to get folder from Tale ID
  • Update publish to use workspace
  • Rough estimate: 3 weeks 1 FTE

Tale-specific data selection

  • This work will replace current Run/Data panel
  • Implement “Select Data” modal to select from catalog including other tales
    • See also mockups in https://docs.google.com/document/d/1pl9FwVNeXyVVTccXLoTIeXsViWflbPpoQ5DLY44g5cw/edit#
    • Assume data is pre-registered Global via current Manage/Data (no DOi/HTTP tab until)
    • User can browse available datasets to select files/folders from the catalog from global catalog or existing Tales that they have access to
    • Files folders are added/removed to session (not checkbox)
      • /api/v1/dm/session
      • /api/v1/dm/session/{id}/add (not implemented)
      • /api/v1/dm/session/{id}/remove (not implemented)
    • User should be able to traverse/browse
    • Ideally multiple-selection
  • Add “external_data” to new Run/Files tab
    • Since session API does not support full tree traversal, UI should only allow add/remove (not traversal or subselection)
    • Supported actions
      • Add data to session (depends on “Select Data” modal and session API)
      • Remove data from session
  • Rough estimate:
    • Select data modal 1 week 1 FTE
    • External data tab (add/remove) 1 week 1 FTE

Refactor Browse to support “Copy on Launch”

  • Add support for All/My “tab” (remove filter?)
    • “All” shows all “public” tales
    • “My” shows all tales I have access to including
      • Tales created by me (eventually shared with me)
      • Copies of Tales I have run
      • Note: conflates Tales and instances (running/not running)
  • Selecting tale from “All”
    • Makes a copy, opens it (i.e., Run page); for now, does not launch
  • Refactor cards (smaller images, ownership, copy, stopped/started)
  • Add stop/start buttons/state to cards including spinner
  • Delete tale is separate from stop instance
  • Deleting running tale, confirmation would change to “Deleting this tale will stop the running instance”
    • Backend handles stopping and deletion
    • There is an existing event stream, may need some minor updates
  • Requires backend work
    • Implementing copy on launch
    • Implement additional attributes (copy)
  • Remove “Launched tales” panel from Browse and Run
  • Rough estimate?
    • 2 weeks 1 FTE

Refactor Compose to Modal

  • Add “Create New Tale” to Browse page
  • Implement compose modal
    • Requires “Select Data” modal (same functionality as external_data), however the session doesn’t exist yet.
    • Select Data modal needs to output same structure for both compose and running tale cases (see above)
  • For now, to be consistent with current UI, create launches tale
    • However, if max instances reached, it should create without launching with sensible message.
  • Remove Compose tab
  • Rough estimate?
    • 4 days 1 FTE

Edit/view tale metadata

  • Add “Metadata” tab to Run page
  • Refactor view/edit page
    • Should be able to see DOIs/information of associated data or parent tales
    • If edit access, user can edit tale metadata
      • Change title, authors, categories, description, image
      • Change environment (remix support)
    • User cannot edit:
      • Datasets used is derived from current state of data
        • DOI-level citation or other human-readable format for top-level registered item
        • Requires backend implementation, UI will get a list of strings
      • Derived from (parent tale)
      • Created
  • Rough estimate?
    • 2 days 1 FTE

Implement “Home” in Run > Files

  • Move “Home” capability from Manage to Run/Files/Home
  • Add ability to copy/move files from home to current workspace
  • Rough estimate?
    • 4 days 1 FTE

Add Browse/Environments

  • Move environments capability from Manage to Browse/Environments
  • Requires look and feel changes to component
  • (Will not implement All v My or “Create” yet)
  • Rough estimate:
    • 2 days 1 FTE


Extend tale metadata

  • Change associated publications
  • Change license (two licenses – one for code/data)
    • Requires backend changes
    • Will require changes to publish
  • Version?

Extend external_data to support move/rename

  • The “Tale-specific data selection” did not include move/rename capability
  • This task entails adding the ability to move/rename folders and files in the external data panel.
  • After further discussion – we’ll wait for users to request this feature

Add Browse/Catalog

  • Implement Browse/Catalog view
  • “All” shows all data available on the WT system
  • “My” shows data that I have registered for use in my tales (same as current Manage/Data panel)
  • Add Data opens the “Select Data” modal with the ability to register external data.
  • Mockups are insufficient


  • Add search box to Select Data modal
  • Sharing
  • Search environments, tales, catalog to use API (not just in page)
  • All environments (blessed) v my environments and adding new environments are still TBD