Selfbox – eine Personal-Data-Store-Lösung
Selfbox ist ein Prototyp für einen Personal Data Store, der im Rahmen meiner Masterarbeit entworfen und umgesetzt wurde. Das Projekt nutzt Neo4J als Storage-Backend für die Daten, wodurch sich beliebige Beziehungen zwischen einzelnen Datenknoten abbilden lassen. Anwendungen können über OpenID entdecken, welche Art von Daten der Server anbietet, und die Besitzerin oder der Besitzer verwaltet die Berechtigungen über OAuth2. Selfbox ist zugleich selbst OAuth2-Provider und macht damit Drittanbieter wie Facebook oder Google vollständig überflüssig. Die Daten werden über GraphQL an die verschiedenen Clients ausgeliefert. Sämtliche Queries, Mutations, OAuth-Scopes und mehr werden dabei automatisch generiert — auf Basis eines GraphQL-Schemas.