Solid is an exciting new project led by Prof. Tim Berners-Lee, inventor of the World Wide Web, taking place at MIT. The project aims to radically change the way Web applications work today, resulting in true data ownership as well as improved privacy.
Solid (derived from "social linked data") is a proposed set of conventions and tools for building decentralized social applications based on Linked Data principles. Solid is modular and extensible and it relies as much as possible on existing W3C standards and protocols.
At a glance, here is what Solid offers...
Users should have the freedom to choose where their data resides and who is allowed to access it. By decoupling content from the application itself, users are now able to do so.
Because applications are decoupled from the data they produce, users will be able to avoid vendor lock-in, seamlessly switching between apps and personal data storage servers, without losing any data or social connections.
Developers will be able to easily innovate by creating new apps or improving current apps, all while reusing existing data that was created by other apps.
The Solid team has encapsulated several years of research and prototyping by a talented group of contributors, led by Tim, into a Node.js based implementation of the Solid server specification, and a basic data browser to allow users to play with the system. Here’s what’s coming in the next couple of months:
Move Solid infrastructure, including the solid.community pod provider, to a safer and more reliable cloud infrastructure on AWS.
The next major release - 5.0.0 - will complete the core feature set by adding support for Group ACLs and stabilizing key components, including OpenID Connect authentication.
Beta release of the Solid Application Developer Kit to the community, which will provide the key components essential to rapidly create a first class Solid application with a great user experience.
Rollout a new user experience to the solid.community pod provider, incorporating the best practices introduced in the Solid Application Developer Kit.
Solid Community Application Registry. Applications that are submitted and approved can get listed in the community directory.
Solid Community Provider Registry. If you’re looking to host a pod provider of your own, you can go through a review process and get added to our registry of trusted providers, which will get you listed in the community directory.
The best way to help the community is to embrace the technology at the heart of it. Create an account at solid.community, store some of your stuff there, and use some apps! Things may be a little rough around the edges now, but we’re feverishly working on the next generation user experience and your input and feedback now can still help shape what we release very soon!
The more potential issues that we can find and resolve, the better. We’re looking for volunteers that are willing to stress test any and all facets of the API or experience. Manual work is always welcome, but if you’ve got expertise with test automation even better. Please report all issues to the appropriate project in the Solid Organization on GitHub.
Get over to Github, pull down some code, get acquainted, and see if you can’t help out on some of the issues in the tracker. Most of the Solid server development efforts are currently focused on node-solid-server, and there’s plenty of work to go around. Join the gitter chat if you’re interested in helping out!
If you’re looking to do app development, get acquainted with rdflib, solid-ui, solid-panes, and mashlib, then check back in September for the release of our Application Development Kit, which will provide some additional componentry for rapid app development with a lot of the common experience workflows mapped out for you.
In advance of the new Solid website and developer portal, we’re going to be looking for a lot of help creating content to onboard contributors, app developers, and users. If you’ve got a background in technical writing and are willing to chip in, let us know!
If you enjoy packaging up software for use in a specific environment, we’d love to get node-solid-server packages created for various operating system distributions.
It is very, very, important that we surface and remediate any potential security issues throughout the Solid ecosystem. If you have experience uncovering vulnerabilities, and are willing to help us harden the codebase, please reach out!
We are pleased to note that a new start-up, Inrupt, Inc, will be putting its own effort into the Solid open source platform and the Solid movement.
“The Solid platform will create a new generation of web applications that realize Tim’s vision of a truly decentralized web. Working with Tim, we’ve created the company Inrupt to help develop Solid and offer complementary software and services to support its potential. We’re heads-down getting Inrupt ready for launch, but in the meantime, you can contact us at email@example.com”
John Bruce, CEO of Inrupt, Inc.
Here are a few examples of prototype applications we have built using the Solid stack.
Eric has a background as W3C staff member, and developer of many RDF-based systems, including query systems.
Amy was a PhD visiting student at MIT from the University of Edinburgh in 2015-2016. She led the bridging of the Solid concepts with the W3C Social Web WG, and co-led the development of the Linked Data Notifications (LDN) protocol.
Andrei was a researcher and developer for the Solid project. His time is spent between writing code and helping advance the Solid project.
Dmitri was the lead developer for the JS-based Solid server, and he played an important role as our community manager. He was responsible for developing the OpenID COnnect (OIDC) authentication.
Nicola is currently a PhD student at MIT, visiting Protocol Labs for a year from September 2017. He was also a lead developer for the reference implementation of the Solid server.
Sarven was a PhD visiting student at MIT from the University of Bonn in 2015-2016. He co-led the development of LDN and works on dokieli.