Hi All,
I’m grappling with an idea: the end-user can manipulate their app GUI as they are using it in any way they like. The nearest example is, of course, Excel. But that’s not really it.
Could I, as an end-user, have a number of GUI templates which I can choose from? So, I have my preferred shopping template, or messaging template, or media playback template, or flight booking template. And I can create and edit these templates.
But how do we get here? I mean how do we get to my personal GUI? This might be a GUI skin on a set of data, functions, actions, component (these terms are use loosely). Could the stage before my personal GUI be a semantic UI? For example, here’s a volume control, but it’s not explaining how it gets rendered in my personal GUI. I have a default for it in my personal GUI templates. It could be a slider or a number input with up and down arrows. And, sure, there would need to mapping from the semantic UI (what the data and logic exposes) to my personal GUI (my preferred rendering).
Then maybe I can group semantic UI functions like transport control or a selectable list of things. And my personal GUI templates describe how I want them rendered.
Anyone heard of anything remotely like this? Any pointers welcome.
Cheers Daniel
1 Like
Cheers Daniel, welcome to the community, and what an interesting first question! This is actually just the kind of thing I have spent some time on, but such a thing is not easy to build and is perhaps an example of what Steve Yegge has called the Nonesuch Beast. It was the goal of the Infusion framework that I worked on with the Fluid community since about 2008, and you can see an example of the kind of thing we produced in this documentation for the Preferences Framework which ironically is itself a framework for customising UIs : P
I don’t suggest you try using this since the UX of getting all the various intricate schemas right is very difficult and to my knowledge noone outside the team has succeeded in customising it effectively. I am still at work trying to deliver a newer version of Infusion but it’s going to be some time before I have anything usable to show, I will make sure to ping this space should I come up with anything.
In the meantime you may be interested in Semprola which was an interesting system presented at our Salon some years ago which has a means of hanging a flexibly determined UI on top of a semantic backend. There isn’t a publically usable implementation so far as I know.
There are a huge variety of NoCode systems out there but they are proprietary or unpleasant to varying extents. Here is one I see that seems to be flavour of the month: Bubble.
2 Likes
Hey @Bosmon thanks for all the info. A little bit overwhelming perhaps.
I don’t really see what I want yet. After a couple of discussions what’s surfaced is maybe to do this as a series of constraints – or it may look like that anyway – rather than a one time mapping from semantic UI to rendered UI. Or maybe by having a graph of objects and relationships where a play button object can be part of a transport object which is part of a media player object. I think I’m looking for a pure view of the semantics before trying to figure out how to render it though. So, then I can choose how many transport functions I want to expose: just a play button or also skip 15 seconds forward/backward or a timeline slider too? It’s ongoing…
1 Like