So far, this is just a random idea flying through my head ;)
Don't reinvent the wheel is one of the mantras of modern software engineering and rightly so. So first step is to try and figure out if someone actually has something like this that could be built upon.