A set of core solid-compatible apps based on solid-ui
JavaScript CSS Other
Clone or download
Tim Berners-Lee
Tim Berners-Lee package-lock.json
Latest commit 4283462 Jul 16, 2018
Permalink
Failed to load latest commit information.
argument Refactor pane registry sep from whole pane collection Feb 24, 2018
attach Refactor pane registry sep from whole pane collection Feb 24, 2018
audio Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018
chat untested -- fix drag and drop, consolidate file drop hander Jul 13, 2018
contact bug fixes in deleteRecursive Jul 12, 2018
doc/images Refactor pane registry sep from whole pane collection 2 Feb 24, 2018
dokieli Use UI.widgets.askName() instead of local clones Feb 9, 2018
form Fix bugs in meeting scheduler; change some buttons from text to icons… Jan 20, 2018
home Refactor pane registry sep from whole pane collection Feb 24, 2018
issue bug fixes in deleteRecursive Jul 12, 2018
links Fix a few bugs in meeting pane and link pane Jan 21, 2018
meeting untested -- fix drag and drop, consolidate file drop hander Jul 13, 2018
microblogPane Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018
outline untested -- fix drag and drop, consolidate file drop hander Jul 13, 2018
pad Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018
playlist standrad playlist/playlistPane.js Jan 2, 2018
profile typo Mar 22, 2018
schedule Missed URIs changed from solid-app-server to solid-panes Feb 26, 2018
sharing Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018
slideshow Fix UI.authn.newAppInstance args; bug and standard for slidewhow pane Aug 7, 2017
source utils.errorMessageBlock should be widgets.errorMessageBlock Apr 29, 2018
style remove failing imports from main style sheet Oct 20, 2016
tabbed bug fix outliner access from other panes Mar 2, 2018
transaction Refactor pane registry sep from whole pane collection Feb 24, 2018
trip standard tripPane.js Dec 28, 2017
ui bug 2 Mar 15, 2018
video standard video/videoPane.js Jan 2, 2018
.babelrc Refactor / update deps Jul 24, 2017
.gitignore Initial commit May 6, 2016
LICENSE Initial commit May 6, 2016
RDFXMLPane.js standard RDFXMLPane.js Jan 2, 2018
README.md Fix typos in README Jul 5, 2018
chatPreferencesForm.ttl Seems to work for first time. Not mases of testing May 25, 2018
classInstancePane.js Refactor pane registry sep from whole pane collection Feb 24, 2018
dataContentPane.js Seems to work again refactoring paneRegistry as sep module and having… Feb 25, 2018
defaultPane.js Refactor pane registry sep from whole pane collection Feb 24, 2018
folderPane.js untested -- fix drag and drop, consolidate file drop hander Jul 13, 2018
humanReadablePane.js Use UI.widgets.askName() instead of local clones Feb 9, 2018
imagePane.js Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018
index.js new pane seems to basically work May 14, 2018
internalPane.js bug fixes in deleteRecursive Jul 12, 2018
n3Pane.js subset a subtree of mashlib and tabulator May 6, 2016
package-lock.json package-lock.json Jul 16, 2018
package.json 1.1.14 Jul 16, 2018
paneRegistry.js Seems to work again refactoring paneRegistry as sep module and having… Feb 25, 2018
socialPane.js Refactor pane registry sep from whole pane collection Feb 24, 2018
tableViewPane.js Now solid-app-set passes the v10 feross 'standard' linter completely Jan 7, 2018

README.md

solid-panes

A set of core solid-compatible applets based on solid-ui

These are a set of interlinked applications, or parts of applications, which called 'panes' -- as in parts of a window. A pane displays a data object of certain class using part of the window. They don't tile like window panes necessarily, but one pane can involve other panes to display objects related to the main object, in all kinds of creative ways. You can give the sub-pane a bit of HTML DOM element to work in, and the data object, and it does the rest.

You can explicitly invoke a specific sub-pane, or you can just provide a DOM element to contain it, ask the pane system to pick the appropriate pane. It does this by calling each potential pane in order with the object, and asking whether it want to. Typically the pane chosen is the most specific pane, so typically a hand-written user interface will be chosen over a generic machine-generated one.

These panes are used in the Data Browser - see mashlib https://github.com/linkeddata/mashlib

Currently the panes available include;

  • A default pane which lists the properties of any object
  • An internals pane which allows the URI and the HTTP fetch history to be checked
  • A pane for Address Books, Groups as well as individual Contacts
  • A pane for seeing pictures in a slideshow
  • A pane for a playlist of YouTube videos
  • A pane for a range of issue trackers, to-do-lists, agendas, etc
  • A file and directory manager for a Solid/LDP hierarchical file store
  • A Sharing pane to control the Access Control Lists for any object or folder
  • and so on

The solid-app-set panes are built using a set of widgets and utilities in https://github.com/linkeddata/solid-ui

Goals

  • Make the system module in terms NPM modules for each pane

  • Allow (signed?) panes to be advertised in turtle data in the web, and loaded automatically

  • Allow a Solid user to save preferences for which panes are used for which data types.

  • Create new panes for playlist and photo management and sharing, fitness, etc

Volunteers are always welcome!

Eg. some RDF CLasses

Here just to show how it works are how some not all RDF Classes map onto panes. So anything to do with contacts (A VCARD Address Book, Group, Individual, Organization) can be handled by the one contact pane. Any other pane which wants to deal with contacts can just use the pane within its own user interface.

Mapping many classes on the L to panes on the R