You can also achieve this without any custom widget.
In your domain model, add a nonpersistent entity with a boolean which controls the visibility of the sidebar. This entity will serve as container for the sidebar. Add a button with a nanoflow to toggle the attribute for opening/closing the container. After that, move the container with css "position:fixed;" and with "top:0; right:0" to the top right side of your app and add something like "height: 100vh". This will give the container the full height of the viewport. You will have to tweak the css a bit more to fit your needs, but that is basically the idea.
Hope it helps.
You could create something like this using the slide in slide out widget from the appstore: https://appstore.home.mendix.com/link/app/17847/
On one side you use the default Mendix sidebar toggle and on the other side you could use this widget.
I've done this before so its definitly possible.
You can create custom layouts with the css class "display:flex".
The only downside of this is that the modeler doesnt render containers with flexbox classes next to each other so your pages will be extremely long and not visually representative of how it will render.