The 6th of August 2021, Ruben Verborgh announced, during the monthly Solid World online meetings, the launch of version 1.0 of the community Solid server (CSS in short).
This day is indeed chosen symbolically, as it is exactly 30 years after Tim Berners-Lee posted information about his Worldwide Web project to the public and introduced the Web to the world.
“Try it“, Tim noted in his message – and since then, billions of people have.
(Let’s hope the same will happen with Solid!)
What is it?
The Github page describes it quite accurately.
“The Community SolidServer is open software that provides you with a Solid Pod and identity.”
So,basically, this software allows you to set up a server to host your own Solid pod.
Solid pods are best seen as data-vaults. On these data vaults you can host your own data and share it with whomever, however and whenever you want (or not).
Having a 1.0 version is huge, as it is no longer in alpha or beta.
It’s open software under MIT license. This means that everyone can use it!
Let’s try it!
As expected from a 1.0 version, there is documentation. And it's easy to follow. https://solidproject.org/self-hosting/css
I’ll try and set up a solid server locally (setting it up on your own laptop or computer).
For this, there are two options. Going with the first option, Node.Js needs to be installed first.
Node.js is as an asynchronous event-driven JavaScript runtime.
The documentation is well written, and CSS was installed within a few minutes.
Once you run the server and go to the http://localhost:3000/, you see the welcome page with the next instruction.
Following the steps, I created a first pod.
If you already have an existing WebID (and thus a Solid pod, for example onsolidcommunity.net), you can link it to this new pod, or you can create a new WebID for your new pod as well.
When using an existing WebID, you do require an extra step: you have to go to your profile and edit the .ttl file. You need to add a triple that gives an access token to validate that it’s indeed your WebID.
On solidcommunity.net :
1) go to your webID [name].solidcommunity.net/profile/card#me.
2) go to the XML source (the </> logo) : that’s the .ttl you’re looking for.
3) Click on the pencil, paste the triple (in red on the registration screen on your localhost) in the .ttl and save.
4) Confirm your password again (on your localhost page), and you’re signed up!
Indeed, you can now go to the folder (in which you are running your CSS) and see a new folder with the name of your new Pod.
In your Pod Folder, you see the following files.
You can go to your http://localhost:3000/[podname]/and see what’s stored in there (currently not much).
You can save .ttl files in the folder, and it’ll be displayed as well.
If you try to click on the files, you’ll get the message “Not logged in”.
Great? How do you log in?
After asking the question, Ruben reminded me of an important core aspect of Solid…
“Solid is meant to be used through apps.”
Right. Still trying to get used to that.
https://penny.vincenttunru.com/ is indeed a good application to try. When you log in through that application, you can see what’s in your pod, actually the entire folder where you installed the CSS is visible. This specific application gives you deep insight into .ttl files.
What’s next?
Well, that’s up to all of us!
You can use it to try and build your apps, or to get access to data-pods and see how it all works. You might want to fill it with data, or tinker with the access rights.
I added some .ttl files using windows folders to one of the pods I made locally,and tried some other applications to view my files. Not all of them worked(some applications needed a https connection, which my localhost doesn’t provide), but it’s nice to start to see the different ways to interact with your data on your own solid pod, hosted on your own community solid server on your own laptop.
Even as a non developer, there are already ways to work with it, and as a data-scientist I'm eager to explore interactions with R and Python.
This is a big step towards a decentralized web of data.
We are looking forward what you'll do with it (let us know).
Try it!