A Technical View on the Solid Ecosystem

Ruben Taelman

OSLC FEST, 20 May 2020

A Technical View on the Solid Ecosystem

Solid

Ghent University – imec – IDLab, Belgium

Solid: a decentralized Web ecosystem

 
Solid Pods

Solid combines several Web standards

Reading and writing over HTTP

Linked Data Platform (LDP)

Users are in control of their own identity

WebID-OpenID Connect (WebID-OIDC)

Logging in to a Solid app

Select an identity provider

Select IDP

Logging in to a Solid app

Logging in at the selected identity provider

Log in

Fine-grained access control to data

Web Access Control (WAC)

WAC: https://alice.inrupt.net/file1.acl

@prefix  acl:    .

<#authorization1>
    a             acl:Authorization;
    acl:agent     <https://alice.inrupt.net/profile/card#me>;
    acl:accessTo  <https://alice.inrupt.net/file1>;
    acl:mode      acl:Read, 
                  acl:Write, 
                  acl:Control.
        

Sending notifications across pods

Linked Data Notifications (LDN)

LDN

Other standards

Tools and services for Solid

Summary

Backup Slides

Solid server API is relatively simple

→ Client-side Solid apps must be smart

Node Solid Server hosts file-based pods

Open source: https://github.com/solid/node-solid-server

Auth Client for authenticated requests

Open source: https://github.com/solid/solid-auth-client

Solid React SDK for developing Solid apps

SDK overview: https://github.com/inrupt/solid-react-sdk

inrupt.net for easily creating a Solid pod

Inrupt.net