Data sovereignty
Your listening and viewing data lives in your personal Solid pod — not on a platform's server. You decide who can read it.
Safe data homeCONSUME
One feedOBEY
Watch nextWATCH
Always onPROFILE
Made for youSLEEP
ConnectedCONFORM
YoursBUY
ControlSUBMITCOMBINE-LD captures what you listen to and watch, stores it in a pod you control, and runs recommendations on your device. Take back control.
Your listening and viewing data lives in your personal Solid pod — not on a platform's server. You decide who can read it.
Music from SoundCloud, video from YouTube — one unified RDF profile. One pod, every platform.
Every event is stored as RDF triples using W3C vocabularies. Portable, interoperable, yours forever.
A model running on your device reads your profile and surfaces recommendations. Nothing leaves your machine.
Platform language frames tracking as convenience. COMBINE-LD reframes it as a user-managed profile: listen events, watch events, charts, and local recommendations stored in a Solid pod.
Every track logged via the MPRIS bridge lands in your pod as an RDF listen event. Your full history — because it's yours, not Spotify's.
Videos captured by the Firefox extension are stored as schema.org watch actions in your pod. Your viewing data stays with you.
Cross-service aggregation produces your personal top artists, albums, tracks, and channels — all derived from pod data.
A local Ollama model queries your aggregated profile and generates suggestions entirely on your machine. No API call leaves your network.
Media behaviour events are stored as RDF triples in a Kvasir Solid pod: no proprietary format, no vendor lock-in. Access is authenticated through Keycloak, and local AI recommendations can run without sending your profile to third-party infrastructure.
Every stream, every watch, every skip is already being recorded — just not for you. COMBINE-LD gives you the same profile back, stored where only you hold the key.
of users feel they have little control over their personal data
streaming platforms the average user is active on — with no unified view
sent to third-party servers for AI recommendations — all processing is local
of your data stored in open RDF — portable, interoperable, yours forever
This is the practical implementation for a bachelor's thesis conducted at imec-IDLab, Ghent University & Odisee. The research question asks which key design decisions are required when building media behaviour profiles across multiple media services in a user-centric way.
The prototype validates those decisions through a working stack: SoundCloud via MPRIS/D-Bus, YouTube via a Firefox extension, RDF events in a Kvasir Solid pod, and local Ollama-based recommendations.
The live demo is under construction. In the meantime, read the thesis or check back when the source code goes public.