In Portland, housing insecure individuals struggle to maintain documentation, which is often required to receive government and/or non-profit services. With PASS, we are building out an application to enable house insecure individuals to store their personal documents online in decentralized data stores, called Pods. Using Solid Data Pods individuals will have control over which organizations and applications can access their documents. Verified organization will be able to use PASS to request data from an individual and/or add documents (such as references or invoices) to an individuals pod.
- Individual - housing insecure person using services to interact with organizations.
- Organization - housing agencies, landlords, government agencies that will be requesting information from individuals.
- Pod/Wallet - decentralized data/document storage built with Solid API. Individuals and organizations will have certain functionality within their pods.
- Folder/Container - referring to the organization of document data into ttl files using Solid API with Inrupt library.
- ACL file - Access Control List is used to manage Solid Pods by allowing users to control who can access and modify their data.
- Individual
- Upload and Maintain Documents
- Able to share documents
- Can copy verified documents into pod from organization(s)
- Organization
- Can request and review documents
- Can create verified documents
- Able to share verified documents with individuals
- Might require several users
Initially built out use-cases in Vanilla JavaScript to determine Solid and Inrupt functionality. Currently beginning to build out the PASS application in React.
Pods are like secure personal web servers for data.
- User registers for a WebID (kind of like an email address)
- User data remains in pod (which is associated to WebID)
- User authorizes applications to read/write/control data in pod
Inrupt is currently leading the way for development with Solid. Check out their documentation here
The Resource Description Framework (RDF) is a framework for expressing information about resources. Resources can be anything, including documents, people, physical objects, and abstract concepts. RDF is intended for situations in which information on the Web needs to be processed by applications, rather than being only displayed to people. Read more about RDF here. See how RDF is used within Solid here.
There is a textual syntax for RDF called Turtle that allows an RDF graph to be completely written in a compact and natural text form, with abbreviations for common usage patterns and datatypes. Read more on the Turtle spec here
With PASS we are looking into using RDF to link between pods and store metadata in turtle files. We are exploring the use of ttl files to enable organizations to query into an individuals pod to see if certain documents are present, while restricting access to the documents themselves.
Development Team | UX/UI Team | Project Management Team |
---|---|---|
Jared K. | Gabby | Flo |
Kevin M. | Kyle | Danica |
Ka Hung | Wilfred | |
Greg Witt | Katharine |
If you're new to the team, check out our on-boarding steps.
- Solid Data Pods
- As noted above, Inrupt provides JavaScript client libraries to help developers create Solid applications. Will be used to upload and query data in pods. Data will be stored in
ttl
files. - Inrupt Access Requests and Grants
- Further documentation on building an access timer to a pod
solid-ui-react
, a React library to make development with Solid simple(ish lol).