cwrc / HuViz

LOD visualization tool for humanities datasets
8 stars 1 forks source link

make tabs, menus and settings site-configurable #369

Closed smurp closed 4 years ago

smurp commented 4 years ago

THIS IS A WORK IN PROGRESS

There are multiple sites and uses intended for HuViz. To support site and deployment-specific configuration, techniques should be developed to permit behaviour of HuViz to be driven by the site it is deployed at; data injected into it; details of it's embedding and the preferences of its users.

1) Settings

There should be a path of places-to-look-for-settings.

  1. a path of server-side name-based file, eg:
    • HUVIZ-SETTINGS-com.nooron.dev.huviz.alpha.json
    • a users own setting should be loadable from some url

It could be that settings are developed which permit the user to have some control over the menus and tabs below...

2) Menus

There are menus which contain different kinds of data source and which are currently labelled:

These should have their contents driven by configurable files which can be managed apart from the HuViz code-base, eg by a sequence of places to look for data to drive those menus. It might also be desirable to have layering, so one can inherit another config file and layer additional data on top.

3) Tabs

The contents of the HuViz tabs are already specified in a fashion which permits configuring the titles and contents of tabs, where the contents can be some of the existing, software-driven functionality such as:

While there are other tabs which have content which is (or can be) provided by external markdown or html-template data, such as:

The configuration of these tabs should be enhanced to permit automatically obtainable, site-specific configuration.

smurp commented 4 years ago

Most of this is already prepared.

Notice that the file huvis.html.ejs refers to the file init_huvis.js

This init_huvis.js already handles the tab and menu contents configuration. There should just be a site-specific over-riding file injected in by the server.

smurp commented 4 years ago

This is working.