From 51847c537797db7f50007451900bf4da16fba5da Mon Sep 17 00:00:00 2001 From: jaxoncreed Date: Wed, 14 Feb 2024 14:07:08 -0500 Subject: [PATCH] Removed old docs --- Readme.md | 3 - documentation/images/Step2.png | Bin 29200 -> 0 bytes documentation/images/Step4Login.png | Bin 44728 -> 0 bytes documentation/images/Step4Logout.png | Bin 20900 -> 0 bytes documentation/images/Step8.png | Bin 77233 -> 0 bytes documentation/solid-react-tutorial.md | 787 -------------------------- 6 files changed, 790 deletions(-) delete mode 100644 documentation/images/Step2.png delete mode 100644 documentation/images/Step4Login.png delete mode 100644 documentation/images/Step4Logout.png delete mode 100644 documentation/images/Step8.png delete mode 100644 documentation/solid-react-tutorial.md diff --git a/Readme.md b/Readme.md index 84c4085..d084623 100644 --- a/Readme.md +++ b/Readme.md @@ -5,9 +5,6 @@ This is a monorepo that contains all libraries associated with Linked Data Objec ## Documentation Full documentation can be found at [ldo.js.org](https://ldo.js.org). -## Tutorial -[A tutorial for how to use LDO](./documentation/solid-react-tutorial.md) is available here. - ## Libraries The LDO monorepo contains the following - [@ldo/cli](./packages/cli/) diff --git a/documentation/images/Step2.png b/documentation/images/Step2.png deleted file mode 100644 index 5efcc6a7f65f8ba870f6b5334503bcf29d9a2d3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29200 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

f#;J-HM(}4&*kqZt(DBL}DN)2E_ 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 EKdCL0uK)l5 diff --git a/documentation/images/Step4Logout.png b/documentation/images/Step4Logout.png deleted file mode 100644 index 5c919042ff3fa360450ac5ad97358f02ef8de293..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20900 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 diff --git a/documentation/images/Step8.png b/documentation/images/Step8.png deleted file mode 100644 index 33f19b3c50a40a0a11b24cc94dae5a4d20163e0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77233 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

    i^RC%PbXS#T*nO*C ztyaJxWNqoi^U)@UKcSQSs;HWfc3ka~)k7uyYx;(wOmVbDsU>gwMrQ-tBIMsE~wfp zNjUXomEf5WxmJCo$T~K`I`IT7P%9I+-AvpOnBPp^s5f!{iHWO+NqcM z=(Pn}aJtQyPF`&uH;tSy4U`1d_R*5rT^X>GwbDr8LW9po~ z=SUGJ(P+z}?&v(n?ay{U8gAy5KFIbZ^2k0+m4Ao2@{>7X6lGTmO0ANwE-J~U-wM_g zzXD0PM~|nOcRbm2weJca)f^3x&pt5Dotc2WoB2UJZ?l~th<8$ST;VMzhZEfES%G+= z^>EPp$=$3)W>Sh@qrl@9TMi@JCT zj(Ols%RVtcL#~~=*xq}Jn{JA7ZF@W2j95=O$aN|u{5l)FEUuQDd|ks1GIJjk@0Piv zXnXzGU*&GQBIfql*tPJR4a)IYnuBfGr8#Ehu+1dX7> z`LD3r)$}U}!fEa*$*I?_XTo;CtMtCMSj{&Vw@y8YL^^+998GU+w_kPCIzxopqa?42 zN+Z*XW3w(~viY3{SE3FxY9lbZ3(4;Dg6Stsk-Y9|mE$v`@$$@|>{mLDp`j-q1T z7YC#HX_JG-6=0#SqIx^iELjMu_`m%y*F_xlot~|z7H9N9oin<@%D|AhellZKCYoSQ zwN3`N!0!VK`KK-bA+QCwpSoM7Ir$B6jKk-=R!=gr*!uGyKyceTOlzqP13BAY!}LZumJVExj3wQ=b82I*$$92iv zricVLA^Uu}){&5Qt8rlKF(>2NezB5eVC~D03e?P<`HqeknKaT$EVyI~UuX+D& z=l|Ede~0n^x9A0yr?jG;ygf7jNAEoF#sM}+-oSxuNbOE8#$vzmvv4FO#n>mt9<|f diff --git a/documentation/solid-react-tutorial.md b/documentation/solid-react-tutorial.md deleted file mode 100644 index aef4f58..0000000 --- a/documentation/solid-react-tutorial.md +++ /dev/null @@ -1,787 +0,0 @@ -# Using LDO to build a Solid Application for React - -Solid separates the application from the storage, allowing users to put their data wherever they choose. Core to achieving this is application interoparability, the ability to use multiple apps on the same dataset. In order to make applications interoperable, Solid is standardized around RDF (Resource Description Framework), a standard for representing data. While RDF is extremely flexible, it is sometimes cumbersome to work with, that's where LDO (Linked Data Objects) comes in. - -In this tutorial, we'll build a web application for Solid using React and LDO. LDO's react library, "@ldo/solid-react" is designed to make it easy to manipulate data on a Solid Pod. - -We'll be making a simple micro-blogging website that allows you to write notes and upload photos. - -// TODO insert image - -This tutorial assumes that you are already familiar with React and the overall concepts associated with Solid. - -## 1. Getting Started - -First, we'll initialize the project. LDO is designed to work with TypeScript, so we want to initialize a typescript react project. - -```bash -npx create-react-app my-solid-app --template typescript -cd my-solid-app -``` - -## 2. Setting up a basic app infrastructure - -Before we can use LDO and connect to a Solid Pod, let's get the boilerplace React infrastructure out of the way. We'll set up a single page that renders your blog timeline and lets you make new posts, and we'll do this with 5 components: - -**App.tsx**: Base of the application. -```tsx -import React, { FunctionComponent } from 'react'; -import { Header } from './Header'; -import { Blog } from './Blog'; - -export const App: FunctionComponent = () => { - return ( -
    -
    - -
    - ); -} -``` - -**Header.tsx**: A header component that will help the user log in. -```tsx -import { FunctionComponent } from "react"; - -export const Header: FunctionComponent = () => { - return ( -
    -

    Header

    -
    -
    - ); -}; -``` - -**Blog.tsx**: The main place for the blog timeline. We'll use this component to list all posts you've made. -```tsx -import { FunctionComponent } from "react"; -import { MakePost } from "./MakePost"; -import { Post } from "./Post"; - -export const Blog: FunctionComponent = () => { - return ( -
    - -
    - -
    - ); -}; -``` - -**MakePost.tsx**: A form to submit new posts. We've already wired it up with form elements to create a text body and upload an image for the post. We just need to fill out the `onSubmit` function. -```tsx -import { FormEvent, FunctionComponent, useCallback, useState } from "react"; - -export const MakePost: FunctionComponent = () => { - const [message, setMessage] = useState(""); - const [selectedFile, setSelectedFile] = useState(); - - const onSubmit = useCallback( - (e: FormEvent) => { - e.preventDefault(); - - // TODO upload functionality - }, - [message, selectedFile] - ); - - return ( -
    - setMessage(e.target.value)} - /> - setSelectedFile(e.target.files?.[0])} - /> - -
    - ); -}; -``` - -**Post.tsx**: A component to render a single post. -```tsx -import { FunctionComponent } from "react"; - -export const Post: FunctionComponent = () => { - return ( -
    -

    Post

    -
    - ); -}; -``` - -When everything's done, run `npm run start` and your application should look like this: - -![What the site should like after step 2 is complete.](./images/Step2.png) - -## Step 3: Installing LDO for Solid and React - -With the main infrastructure set up, let's install LDO's Solid/React library. - -```bash -npm install @ldo/solid-react -``` - -This library will give us many useful hooks and components for building a Solid application, but it can't be used unless we wrap the application in a provider. Because we're building a React application in the web browser, we'll wrap the application using the `BrowserSolidLdoProvider`. - -**App.tsx** -```tsx -// ... -import { BrowserSolidLdoProvider } from '@ldo/solid-react'; - -export const App: FunctionComponent = () => { - return ( -
    - -
    - - -
    - ); -} -``` - -## 4. Implementing Login/Logout in the header - -Setting up login for a Solid application is easy when you're using ldo's Solid React library. With the `useSolidAuth()` hook, you can get information and methods to setup login. - -In the component below, we use the `session` object for information about the current session including `session.isLoggedIn`, a boolean indicating if the user is currently logged in, and `session.webId` to get the current user's webId. These will automatically update and rerender the component if anything changes about the current session. - -Next we use the `login(issuer: string)` method to initiate a login. Because a Solid Pod could be anywhere onthe web, we first ask the user to enter their Solid issuer then provide that to the login function. - -Finally, the `logout()` function lets you easily trigger a log out. - -**Header.tsx** -```tsx -import { useSolidAuth } from "@ldo/solid-react"; -import { FunctionComponent } from "react"; - -export const Header: FunctionComponent = () => { - const { session, login, logout } = useSolidAuth(); - - return ( -
    - {session.isLoggedIn ? ( - // Is the session is logged in -

    - You are logged in with the webId {session.webId}.{" "} - -

    - ) : ( - // If the session is not logged in -

    - You are not Logged In{" "} - -

    - )} -
    -
    - ); -}; -``` - -Because `useSolidAuth` is a hook, you can use it anywhere in the application, even components that don't contain buttons for "login" and "logout." For example, we could use the `session` object in `Blog.tsx` to display a message if the user is not logged in. - -```tsx -import { FunctionComponent } from "react"; -import { MakePost } from "./MakePost"; -import { Post } from "./Post"; -import { useSolidAuth } from "@ldo/solid-react"; - -export const Blog: FunctionComponent = () => { - const { session } = useSolidAuth(); - if (!session.isLoggedIn) return

    No blog available. Log in first.

    ; - - return ( -
    - // .. -
    - ); -}; - -``` - -Once you've implemented these changes, the application should look like this when logged out: - -![Your site when logged out after completing step 4.](./images/Step4Logout.png) - -And this when logged in: - -![Your site when logged in after completing step 4.](./images/Step4Login.png) - -## 5. Setting up a shape -In step 6, we're going to use information from a user's Solid WebId profile. But, before we can do that, we want to set up a shape for the Solid Profile. - -LDO uses ShEx "Shapes" as schemas to describe how data looks in an application. We can get started by using the `init` command line tool to get the project ready to use shapes. - -```bash -npx @ldo/cli init -``` - -This command will install required libraries and creates two folders: the `.shapes` folder and the `.ldo` folder. - -If you look in the `.shapes` folder, you'll find a default file called `foafProfile.shex`. This is a ShEx shape that defines a very simplified profile object. - -If you look in the `.ldo` folder, you'll files generated from the shape. For example, `foafProfile.typings.ts` contains the Typescript typings associated with the shape, `foafProfile.context.ts` conatians a JSON-LD context for the shape, and `foafProfile.shapeTypes.ts` contains a shape type, a special object that groups all the information for a shape together. We'll be using ShapeTypes later in this tutorial. - -For our project, we want to use a Solid Profile, so let's delete the "foafProfile" ShEx shape and make a new file for our Solid profile. - -```bash -rm ./src/.shapes/foafProfile.shex -touch ./src/.shapes/solidProfile.shex -``` - -Now, let's create a shape for the Solid Profile. The code for a Solid profile is listed below, but you can learn more about creating ShEx shapes of your own on the [ShEx website](https://shex.io) - -```shex -PREFIX srs: -PREFIX foaf: -PREFIX rdfs: -PREFIX schem: -PREFIX vcard: -PREFIX xsd: -PREFIX acl: -PREFIX cert: -PREFIX ldp: -PREFIX sp: -PREFIX solid: - -srs:SolidProfileShape EXTRA a { - a [ schem:Person ] - // rdfs:comment "Defines the node as a Person (from Schema.org)" ; - a [ foaf:Person ] - // rdfs:comment "Defines the node as a Person (from foaf)" ; - vcard:fn xsd:string ? - // rdfs:comment "The formatted name of a person. Example: John Smith" ; - foaf:name xsd:string ? - // rdfs:comment "An alternate way to define a person's name." ; - vcard:hasAddress @srs:AddressShape * - // rdfs:comment "The person's street address." ; - vcard:hasEmail @srs:EmailShape * - // rdfs:comment "The person's email." ; - vcard:hasPhoto IRI ? - // rdfs:comment "A link to the person's photo" ; - foaf:img xsd:string ? - // rdfs:comment "Photo link but in string form" ; - vcard:hasTelephone @srs:PhoneNumberShape * - // rdfs:comment "Person's telephone number" ; - vcard:phone xsd:string ? - // rdfs:comment "An alternative way to define a person's telephone number using a string" ; - vcard:organization-name xsd:string ? - // rdfs:comment "The name of the organization with which the person is affiliated" ; - vcard:role xsd:string ? - // rdfs:comment "The name of the person's role in their organization" ; - acl:trustedApp @srs:TrustedAppShape * - // rdfs:comment "A list of app origins that are trusted by this user" ; - cert:key @srs:RSAPublicKeyShape * - // rdfs:comment "A list of RSA public keys that are associated with private keys the user holds." ; - ldp:inbox IRI - // rdfs:comment "The user's LDP inbox to which apps can post notifications" ; - sp:preferencesFile IRI ? - // rdfs:comment "The user's preferences" ; - sp:storage IRI * - // rdfs:comment "The location of a Solid storage server related to this WebId" ; - solid:account IRI ? - // rdfs:comment "The user's account" ; - solid:privateTypeIndex IRI * - // rdfs:comment "A registry of all types used on the user's Pod (for private access only)" ; - solid:publicTypeIndex IRI * - // rdfs:comment "A registry of all types used on the user's Pod (for public access)" ; - foaf:knows IRI * - // rdfs:comment "A list of WebIds for all the people this user knows." ; -} - -srs:AddressShape { - vcard:country-name xsd:string ? - // rdfs:comment "The name of the user's country of residence" ; - vcard:locality xsd:string ? - // rdfs:comment "The name of the user's locality (City, Town etc.) of residence" ; - vcard:postal-code xsd:string ? - // rdfs:comment "The user's postal code" ; - vcard:region xsd:string ? - // rdfs:comment "The name of the user's region (State, Province etc.) of residence" ; - vcard:street-address xsd:string ? - // rdfs:comment "The user's street address" ; -} - -srs:EmailShape EXTRA a { - a [ - vcard:Dom - vcard:Home - vcard:ISDN - vcard:Internet - vcard:Intl - vcard:Label - vcard:Parcel - vcard:Postal - vcard:Pref - vcard:Work - vcard:X400 - ] ? - // rdfs:comment "The type of email." ; - vcard:value IRI - // rdfs:comment "The value of an email as a mailto link (Example )" ; -} - -srs:PhoneNumberShape EXTRA a { - a [ - vcard:Dom - vcard:Home - vcard:ISDN - vcard:Internet - vcard:Intl - vcard:Label - vcard:Parcel - vcard:Postal - vcard:Pref - vcard:Work - vcard:X400 - ] ? - // rdfs:comment "They type of Phone Number" ; - vcard:value IRI - // rdfs:comment "The value of a phone number as a tel link (Example )" ; -} - -srs:TrustedAppShape { - acl:mode [acl:Append acl:Control acl:Read acl:Write] + - // rdfs:comment "The level of access provided to this origin" ; - acl:origin IRI - // rdfs:comment "The app origin the user trusts" -} - -srs:RSAPublicKeyShape { - cert:modulus xsd:string - // rdfs:comment "RSA Modulus" ; - cert:exponent xsd:integer - // rdfs:comment "RSA Exponent" ; -} -``` - -Finally, we can run the command below to build the Solid Profile shape. - -```bash -npm run build:ldo -``` - -You'll notice that the `.ldo` folder contains information about a _solid_ profile. - -## 6. Fetching and using information - -Let's go back to the header we built. Yeah it's cool, but if your profile includes a name, wouldn't it be better if it said, "You are logged in as Jackson Morgan" rather than "You are logged in with the webId https://solidweb.me/jackson3/profile/card#me?" - -Well, we can fix that by retrieving the user's profile document and using the data from it. - -We can use the `useResource` and `useSubject` hooks to do this. - -```tsx -import { FunctionComponent } from "react"; -import { useResource, useSolidAuth, useSubject } from "@ldo/solid-react"; -import { SolidProfileShapeShapeType } from "./.ldo/solidProfile.shapeTypes"; - -export const Header: FunctionComponent = () => { - const { session, login, logout } = useSolidAuth(); - const webIdResource = useResource(session.webId); - const profile = useSubject(SolidProfileShapeShapeType, session.webId); - - const loggedInName = webIdResource?.isReading() - ? "LOADING..." - : profile?.fn - ? profile.fn - : session.webId; - - return ( -
    - {session.isLoggedIn ? ( - // Is the session is logged in -

    - You are logged as {loggedInName}.{" "} - -

    - ) : ( -// ... -``` - -The `useResource(uri: string)` will load a provided URI into your application. You can use methods like `.isReading()` to get the current status of the resource. When anything updates with the resource, a rerender will be triggered on your component. - -RDF data is automatically loaded into a central dataset inside your application. To access that dataset, we can use `useSubject(uri: string)`. `useSubject` takes in a ShapeType and an uri. It returns a JSON representation of that URI given the ShapeType. In the above example, we've provided the autogenerated `SolidProfileShapeShapeType` as well as the webId. This essentially says to LDO, "The URI I've provided is a Solid Profile. Please give me JSON representing this as a Solid Profile." - -Once we have the subject, all we have to do is treat it like JSON. To get the "formalName" for a profile, just call `profile.fn`. - -## 7. Getting the main container - -Let's move on to building the blog section of our site. One of the biggest questions when building Solid applications is "Where should I save new data?" While that question may have an different answer in the future, today apps traditionally create a new folder to save new data to. - -But, to create a new folder, we want to know what the root folder of the application is. At the time of login, the only URL we know is the WebId, so we want to find the root folder for that WebId. It's not always to root domain. For example, on some pod servers a WebId follows this format `https://example.pod/myusername/profile/card#me` and the root file is `https://example.pod/myusername/`. So, how do we know which container is the real root container? Well, we can use the `getRootContainer` method. - -Let's add the following hook to **Blog.tsx** - -```tsx -// ... -import { useLdo, useResource, useSolidAuth } from "@ldo/solid-react"; -import { ConatinerUri } from "@ldo/solid"; - -export const Blog: FunctionComponent = () => { - const { session } = useSolidAuth(); - - const { getResource } = useLdo(); - const [mainContainerUri, setMainContainerUri] = useState< - ContainerUri | undefined - >(); - - useEffect(() => { - if (session.webId) { - // Get the WebId resource - const webIdResource = getResource(session.webId); - // Get the root container associated with that WebId - webIdResource.getRootContainer().then((rootContainerResult) => { - // Check if there is an error - if (rootContainerResult.isError) return; - // Get a child of the root resource called "my-solid-app/" - const mainContainer = rootContainerResult.child("my-solid-app/"); - setMainContainerUri(mainContainer.uri); - // Create the main container if it doesn't exist yet - mainContainer.createIfAbsent(); - }); - } - }, [getResource, session.webId]); - - //... -``` - -Let's walk through what's happening here. First, we can use the `useLdo` hook to get a number of useful functions for interacting with data (and we'll use more in the future). In this case, we're getting the `getResource` function. This serves roughly the same purpose as the `useResource` hook, but in function form rather than hook form. Keep in mind that resources retrieved from the `getResource` function won't trigger rerenders on update, so it's best used when you need a resource for purposes other than the render. - -Using the `getResource` function, we get a resource representing the webId. Every resource has the `getRootContainer` method which returns a promise with either the root container, or an error. Everything returned by LDO methods has the `isError` parameter, so you can easily check if it's an error. - -We'll then save the URI of the main application container so we can use it in step 8. - -Any container resource has the `child` method which gets a representation of the any child, and with that representation we can call the `createIfAbsent` method to create the create out application's main container. - -## 8. Rendering Container Children - -Before we continue, let's talk a bit about the folder structure for this application. We just got our "main folder", the folder we'll save everything to. Inside that folder, we'll put our individual blog posts. These will be folders themselves with potentially two files: a post data file (index.ttl) and some image file. Overall, our folder layout will look like this: - -``` -rootContainer/ -├─ my-solid-app/ -│ ├─ post1/ -│ │ ├─ index.ttl -│ │ ├─ some_image.png/ -│ ├─ post2/ -│ │ ├─ index.ttl -│ │ ├─ another_image.jpg/ -``` - -We've already created the `my-solid-app/` container, so let's add a bit of functionality to create the post folders. Let's modify **MakePost.tsx**. - -```tsx -export const MakePost: FunctionComponent<{ mainContainer: Container }> = ({ - mainContainer, -}) => { - const [message, setMessage] = useState(""); - const [selectedFile, setSelectedFile] = useState(); - - const onSubmit = useCallback( - async (e: FormEvent) => { - e.preventDefault(); - - // Create the container for the post - const postContainerResult = await mainContainer.createChildAndOverwrite( - `${v4()}/` - ); - // Check if there was an error - if (postContainerResult.isError) { - alert(postContainerResult.message); - return; - } - const postContainer = postContainerResult.resource; - }, - [message, selectedFile, mainContainer] - ); - //... -``` - -Firstly, note that we've added a prop to include a main container. We use this in the `onSubmit` function to call the `createChildAndOverwrite` method. We can generate a name for the sub-folder any way we want, but in this example, we used UUID to generate a random name for the folder. - -Finally, we check to see if the result is an error, and if it isn't we extract our new Post container from the result. - -Now that we have the ability to create a container, let's view it. - -We'll modify **Post.tsx** to include the uri of the post: - -```tsx -import { ContainerUri } from "@ldo/solid"; - -export const Post: FunctionComponent<{ postUri: ContainerUri }> = ({ - postUri, -}) => { - return ( -
    -

    ContainerURI is: {postUri}

    -
    - ); -}; -``` - -And, in **Blog.tsx** we'll use the `useResource` hook on the main container keep track of the status of the main container. - -```tsx -export const Blog: FunctionComponent = () => { - const { session } = useSolidAuth(); - - const { getResource } = useLdo(); - const [mainContainerUri, setMainContainerUri] = useState< - ContainerUri | undefined - >(); - const mainContainer = useResource(mainContainerUri); - - // ... - - return ( -
    - -
    - {mainContainer - // Get all the children of the main container - .children() - // Filter out children that aren't containers themselves - .filter((child): child is Container => child.type === "container") - // Render a "Post" for each child - .map((child) => ( - - -
    -
    - ))} -
    - ); -}; -``` - -In the render, we can use the `children()` method on the main container to get all the child elements of our container. As discussed earlier, the only children of this container should be containers themselves, so we'll filter out all non-containers. And finally, we render the post for each child. - -Once this step is done, you should be able to press the "Post" button to create posts (or at least the container for the post. We'll make the rest of the post in future steps). It should look like this. - -![Your site when after completing step 8.](./images/Step8.png) - -## 9. Uploading unstructured data - -Pods aren't just for storing containers, of course. They can also about storing raw data like images and videos. Let's add the ability to upload an image to our application. - -```tsx - const onSubmit = useCallback( - async (e: FormEvent) => { - // ... - // Upload Image - let uploadedImage: Leaf | undefined; - if (selectedFile) { - const result = await postContainer.uploadChildAndOverwrite( - selectedFile.name as LeafUri, - selectedFile, - selectedFile.type - ); - if (result.isError) { - alert(result.message); - await postContainer.delete(); - return; - } - uploadedImage = result.resource; - } - }, - [message, selectedFile, mainContainer] - ); -``` - -We added the above section to the onSubmit function in **MakePost.tsx**. In this part of code, we use the selected file created in Step 2 as well as the post container's `uploadChildAndOverwrite` method to upload the file. This method takes in three parameters: - * The name of the file. - * The file itself (or any Blob) - * The file's mime-type - -Finally, we check if there's an error, and if there isn't, we assign the result to a variable, `uploadedImage`. We'll use this in step 10. - -After implementing this step, your application should now be able to upload photos to your Pod. - -## 10. Addeding structured data. - -Unstructured data is good, but the real lifeblood of Solid comes from its structured data. In this step, we'll create a Post document that contains the Post's text body, a link to the image, and it's time of posting. - -Before we can do that, like we did with the profile, we want to have a ShEx shape for a social media posting. Create a new file called **./.shapes.post.shex** and paste the following ShEx shape. - -**./.shapes/post.shex** -```shex -PREFIX rdf: -PREFIX rdfs: -PREFIX xsd: -PREFIX ex: -BASE - -ex:PostSh { - a [ ] ; - xsd:string? - // rdfs:label '''articleBody''' - // rdfs:comment '''The actual body of the article. ''' ; - xsd:date - // rdfs:label '''uploadDate''' - // rdfs:comment '''Date when this media object was uploaded to this site.''' ; - IRI ? - // rdfs:label '''image''' - // rdfs:comment '''A media object that encodes this CreativeWork. This property is a synonym for encoding.''' ; - IRI - // rdfs:label '''publisher''' - // rdfs:comment '''The publisher of the creative work.''' ; -} -// rdfs:label '''SocialMediaPost''' -// rdfs:comment '''A post to a social media platform, including blog posts, tweets, Facebook posts, etc.''' -``` - -Now we can build the shapes again by running: - -```bash -npm run build:ldo -``` - -With the new shape in order, let's add some code to **MakePost.tsx** to create the structured data we need. - -```tsx -import { PostShShapeType } from "./.ldo/post.shapeTypes"; - -export const MakePost: FunctionComponent<{ mainContainer: Container }> = ({ - mainContainer, -}) => { - // ... - const { createData, commitData } = useLdo(); - - const onSubmit = useCallback( - async (e: FormEvent) => { - // ... - - // Create Post - const indexResource = postContainer.child("index.ttl"); - // Create new data of type "Post" where the subject is the index - // resource's uri, and write any changes to the indexResource. - const post = createData( - PostShShapeType, - indexResource.uri, - indexResource - ); - // Set the article body - post.articleBody = message; - if (uploadedImage) { - // Link the URI to the - post.image = { "@id": uploadedImage.uri }; - } - // Say that the type is a "SocialMediaPosting" - post.type = { "@id": "SocialMediaPosting" }; - // Add an upload date - post.uploadDate = new Date().toISOString(); - // The commitData function handles sending the data to the Pod. - const result = await commitData(post); - if (result.isError) { - alert(result.message); - } - }, - [mainContainer, selectedFile, createData, message, commitData] - ); - // ... -``` - -Structured data is a little different than unstructured data. Data can potentially exist in multiple resources. That isn't the case here, but we're still going to treat index.ttl, the resource, separately from the data we put on the resource. - -When we want to create data we can use the `createData` function (which we can get through the `useLdo` hook). `createData` takes three arguments: -* The ShapeType of the data. In this case, we're asserting that this data is a "Post." -* The uri for the data's "subject." In this case, it's the same as the index.ttl resource. -* A list of resources that this data will be written to. All triples that are created when you modify this data will be saved to this list of resources. - -From there, we can just modify the data as if it were normal JSON. Note that in some cases we set a field to `{ "@id": uri }`. This means that the field should point to the given URI. - -Finally the `commitData()` method takes the modified data and syncs it with the Solid Pods. - -When all is saved, the data on the Pod should look something like this: - -```turtle - "Hello this is a post"; - ; - a ; - "2023-09-26T19:01:17.263Z"^^. - -``` - -## 11. Displaying the Post -Finally, let's bring it all together and modify **Post.tsx** to display the uploaded data. - -**Post.tsx** -```tsx -import { FunctionComponent, useCallback, useMemo } from "react"; -import { ContainerUri, LeafUri } from "@ldo/solid"; -import { useLdo, useResource, useSubject } from "@ldo/solid-react"; -import { PostShShapeType } from "./.ldo/post.shapeTypes"; - -export const Post: FunctionComponent<{ postUri: ContainerUri }> = ({ - postUri, -}) => { - const postIndexUri = `${postUri}index.ttl`; - const postResource = useResource(postIndexUri); - const post = useSubject(PostShShapeType, postIndexUri); - const { getResource } = useLdo(); - const imageResource = useResource( - post?.image?.["@id"] as LeafUri | undefined - ); - - // Convert the blob into a URL to be used in the img tag - const blobUrl = useMemo(() => { - if (imageResource && imageResource.isBinary()) { - return URL.createObjectURL(imageResource.getBlob()!); - } - return undefined; - }, [imageResource]); - - const deletePost = useCallback(async () => { - const postContainer = getResource(postUri); - await postContainer.delete(); - }, [postUri, getResource]); - - if (postResource.status.isError) { - return

    postResource.status.message

    ; - } - - return ( -
    -

    {post.articleBody}

    - {blobUrl && ( - {post.articleBody} - )} - -
    - ); -}; -``` - -Here, we've employed a few concepts that we're already familiar with as well as a few new tricks. Of course, we're using "useResource" and "useSubject" to get data about the Post. Then we can render that information by treating it just like JSON. For example `

    {post.articleBody}

    `. - -Notice that we can get the URL for the image with `post.image["@id"]`, but we're not using that directly in the img tag (eg ``). Why? Many resources on a Solid Pod (these included) are not open to the public. If we put the image URL directly in the the img tag, the request to get that image would be unauthorized. Instead, we perform an authenticated fetch on the image the same way we do with anything else: using `useResource`. Once we have the resource, we can convert the resource to a blob url with `URL.createObjectURL(imageResource.getBlob())`. - -We've also added a delete button. Deleting containers and resources is just as simple as running `resource.delete()`. - -## Conclusion - -And with that, you have a fully functional Solid application. LDO's React/Solid integration keeps track of state and makes sure everything is run efficiently so you can focus on developing your application. \ No newline at end of file