Picolab / pico-pods

Linking picos to Solid pods
0 stars 0 forks source link

Explore pod JS client #6

Open windley opened 5 months ago

windley commented 5 months ago

JS client: https://github.com/inrupt/solid-client-js Docs: https://docs.inrupt.com/developer-tools/javascript/client-libraries/

Write 1-page document with findings.

windley commented 5 months ago

Use this client to interact with your Docker pod instance running on your machine.

keylanjensen commented 4 months ago

Our Report:

The Pod identifies valid accessors via a Solid Identity Provider (redirecting unverified accessors to the identity provider). The client login process redirects to the Solid Identity Provider and awaits a response. The Pod itself has an URL, and each file gets a sub-URL inside the Pod. Files are identified by their URL. Files can be stored inside Containers which are analogous to folders for the purposes of the Pod’s sub-URLs. Containers can be stored inside other Containers. Raw data such as numbers and text is stored as Things inside SolidDatasets inside a Container which can be inside other Containers. Things must be inside SolidDatasets. SolidPods has a universal access control API. Using this API, each file/Thing can be set to either private access (only the owner can access it by default) or public access (anyone can access it by default). In addition, individual users/agents can be given access. Access is divided into three aspects: reading, writing, and appending. Read access allows an agent to view the resource, write access allows an agent to change the resource and add new data to a resource, and append access allows an agent to add new data to a resource (and is thus a limited version of write access). SolidPods JS Client also has two APIs for access control, ACP and WAC. It is not recommended to use these specific APIs and we will follow this guidance. The solid-client import includes several functions to ease the process of retrieving, modifying, and uploading datasets. They reduce the required parameters to the created dataset and the URL associated with it.