Idea: Use Grav as a workshop platform in a MultiCourse Hub?

TL;DR

Hi I use Grav since a couple of days and I like it very much. It is stable and mature with a lot of functionality. BTW I could successfully extend an existing theme and apply css, js, twig very easily. Thanks for all the excellent work done so far.

Looking deeper into some skeleton I found the Open Matter Course Side (OMCS).

IMHO this will complement the OMCS Skeleton perfectly. Every card is a specific course that points to a virtual container started with lando, …

In my mind I have a specific use case, let me explain it a bit.

If I want to create a recipe or show some features and functions of an operating system, specific software for different audiences (novice, beginner, intermediate, advanced, expert) I need on one side a markdown description panel explaining all required steps to build a specific setup for a defined baseline. The baseline could be a docker image, docker compose, kubernetes pod, cloud image, etc. On the other side a terminal panel to experiment with commands or be the target of some extra markdown commands.

For example there could be a docker file with a minimalistic UI containing Firefox or Chrome as a browser I can use something like below to execute a command in a terminal

```exec
date
```

or a shell script doing the same

```script
./date.sh
```

Above you’ll find a mockup explaining what I have in my mind.

(1) Click the top button to open a terminal window
(2) Click the markdown button in the mid documentation pane to execute the command in a terminal
(2) Show the result in the right terminal pane
(3) Click the markdown button in the mid documentation pane to execute the script in a terminal
(3) Show the result in the right terminal pane
(4) Click the top button to open noVNC session to the graphical desktop

Of course the commands and scripts can be more complex to setup the system and/or the UI adding packages, changing other stuff like injecting URLs into the browser and so on.

It would be also nice to have even a way to store the credentials for accessing SSH, noVNC, … and a button to copy and paste values using the noVNC, xclip clipboard.

Other advanced features could be: collapsable columns (left, middle, right panel) tabbed terminal, tabbed notebooks (horizontal input), …

What do you thing can this be implemented in Grav?

Your thoughts are welcome.