Pods Demo Instructions
Instructions
Prerequisites:
Only one machine is required.
Have a pico running with sample.krl installed.
Have an Inrupt pod running; Go to http://start.inrupt.com and create an account. On your profile it will display your storageURL. Go to http://login.inrupt.com and register an app. That is the clientID and clientSecret you will use. The tokenURL is https://login.inrupt.com/token
Have the website running by pulling the pico-pods repo, clicking on samples/index.html, and clicking “Go Live” in the bottom right corner of VSCode. If you don’t see the button, download the Live Server Extension.
Have the pico ECI (using the format http://localhost:3000/sky/event/{ECI}), storage URL, token URL, client ID, and client secret ready to copy-paste into the website. We used a Google Doc to store this information beforehand.
Have a couple of URLs to photos ready to upload into the pod. We stored ours in the same Google Doc. You can use file URLs from your local machine.
Alternatively, you can use the two photos we have stored in the github, in the samples folder: sample.jpg and cat.jpg. (The demo will not display any files that dont end with .jpeg, .jpg, and .png. It also cannot handle query parameters in the file locations (i.e. https://raw.githubusercontent.com/cat.jpg?content=raw’))
https://github.com/Picolab/pico-pods/blob/main/samples/cat.jpg (use this link to download the image to in the demo app: https://raw.githubusercontent.com/Picolab/pico-pods/main/samples/cat.jpg)
In the demo video, we used one local file and one https file.
Whatever photos you use, make sure that all the slashes are facing the same way, like so: file://C:/Users/rebel/Downloads/photo.jpg
Demo:
Purpose: the purpose of this project is to give developers a way to create their own decentralized applications, giving back ownership of data to users.
Slide 1
Explanations
What is a dApp and why do people care?
Unlike the traditional design of a database that can only be accessed by the server, a dApp puts the database in a place where it can be accessed both by the browser (user) and the server, if the user gives the server permission.
dApps give control of data back to the user.
Slides 2 and 3
What is a pico?
“an actor-based programming system that supports people-centric, reactive programming on the internet.”
Picos function by listening for events. They are asynchronous.
Slide 4
What is Solid?
Solid is a specification that lets individuals and groups store their data securely in decentralized data stores called Pods. Pods are like secure web servers for data. When data is stored in a Pod, its owners control which people and applications can access it.
Slide 5
Can host the pod and pico anywhere
Actual Demo
Slide 6
Log in and connect storage via Attach Pod
Add photos
If you want, you can switch tabs to Penny (https://penny.vincenttunru.com/ ) and show that the files were indeed stored in the pod
Click on one photo
Explain make private, grant access to, and remove access from
Slide 7: explain the significance of this feature as it is core to the purpose of the project
Privacy and portability
Optional: explore some of the other features of the demo (search, create/delete folder, delete photo, etc)
Questions?
Copyright Picolabs | Licensed under Creative Commons.