To let users/clients to the admin area is not a solution, mainly because you don't have control over the admin theme and over functionality there.
My attempts:
- maybe 4 years ago, in fact, it was lonalore doing, he copied e_admin to the plugin as e_frontend (not remember correctly) class and he was able to use it frontend. If I remember correctly, there was e_frontend class in core then.
- maybe 2 years ago, tested with CaMeRon frontend using of Admin UI. It worked then.. Something was needed, using a different header/footer, fix loading some css/js... and maybe parameter ":raw" and echo... I still have access to that site, I could look, if it is needed. But Admin UI should be worked on the frontend, if not, it is a bug. And I think there is a closed issue about this from that time. It was a site with 3 levels on frontend editing... and it worked at that time.
- maybe a year ago... used an admin solution from efiction CMS as e107 plugin, wow, it was something, the logic behind admin levels, settings capabilities and visibility... I just haven't get time for this and we decided to stay with UnNuke, so it wasn't needed anymore.
- actually, in the process, I am moving all admin functionality to the plugin. I got it working, but now I need to replace admin shortcodes with plugin shortcodes because they work only if ADMIN is true, strip it not needed code, and solve save access. But it had to be postponed because... as you can see... there are too many changes in the core now and the themes got priority. It should be called the client zone. In meantime, the client decided to use WordPress solution for this... And if I remember correctly, the challenge here was rendering admin menu (without manually written code).
By the way, with OIM plugin user needs access to admin area too.
So use Admin UI on the frontend, set correct permissions, check correct queries etc, it should work. If not, move this topic to Github.