DEV Community

Camilla van Klinken
Camilla van Klinken

Posted on

The admin panel I wanted

While working at an insurtech, I had to roll out a new microservice every month or so.

Each time we did this it came with a new admin panel, sets of credentials and another backend tool to keep maintained.

From working at a few different startups it seems to me that everyone starts from scratch and usually build something that's:

  • {resources} Built with a fraction of the resources really needed and gets limited improvements
  • {permissions} Has no or very limited permissions/user management
  • {compliance} Is in no way GDPR or any other data legislation compliant
  • {ui} Has an interface that looks terrible and is probably hard to navigate
  • {audit} Has no way to audit what users are doing or have done

At the insurtech at least we had a template for the admin panels. And yes we could/should have gotten around to integrating them into a SAML service...but we were very busy and had deadlines to hit.

So there are a bunch of admin interface options out there. There are vue/react front-ends that look appealing but don't take on the heavy lifting of permissions management.

We came across Forest Admin but it wasn't fully self-hosted and our IT team wouldn't allow anything near the production DB that might pull data out even if it promised not to.

This seemed like a pretty good opportunity to build a tool that would solve my problem.

So what I had in mind was something where:

  • {multiple dbs} From one interface you can connect to as many databases and tables as needed.
  • {role based permissions} Users could see the data in any given database table that they had permissions to access.
  • {search} Users could search through the data in those tables to find what they needed.
  • {crud} Where relevant users could create/update/delete records.
  • {user management} Permissions are centrally managed ideally in a way that someone on the support desk could manage rather than a developer.
  • {charts} Possibly some other bits like seeing how many new rows had been added to a table or some basic charts to see what was going on.

I've been building this tool for quite a while now and am using it on some of projects. It's on github as MissionKontrol.

I've just come back to it after a bit of a break because it took a bit of energy to get it all mostly working.

If you're interested in testing it, please write to me on Twitter.

Top comments (0)