The corresponding challenge is #102.
The goal of this browser extension is that requests are automatically authenticated when needed. Using this we can show that a Web app can be created that reads data from and stores data in a protected resources in a pod without the need for including Solid authentication in the Web app.
We developed a Web app that allows users to edit Markdown files using only GET and PUT requests. It has the following features:
- Load Markdown files via GET requests.
- Store Markdown files via PUT requests.
- Show WebID of user if user has logged in with the Solid Authentication browser extension.
- WebID and browser extension are not needed when working with public resources.
- Show urls of most recent files. The urls are stored in the browser storage.
You find a live version of the app here and a screencast of the app here.
We made the following important technological decisions and assumptions:
- The tool relies on the Solid authentication browser extension for requests that required authentication. No fallback is provided for when the extension is not installed.
- The user knows where a new resource should be stored on the pod. They manually provide the full URL of the resource in a text-field.
- Menubar app
- User of the application
- The user has Node.js installed.
- The user has this version of the Solid authentication browser extension installed.
- The user has a WebID and pod. You can create both for testing via the Pod Playground of SolidLab.
- The user has logged in with their WebID in the browser extension.
-
Clone the repo of the app via
git clone https://github.com/SolidLabResearch/markdown-editor.git
-
Install the dependencies via
npm i
-
Start the server via
npm start
-
Open Firefox and browse to http://localhost:8080/.
-
In the text field at the top enter the URL for a new Markdown resource on your pod.
-
Edit the Markdown file.
-
The app automatically saves your changes.
- Open the resource in a new tab in your browser. You don't need the app to see its content. Note that the Community Solid Server will not show the Markdown file directly, but a rendered HTML version instead.
None.
None.