Skip to content

SolidLabResearch/Bashlib

Repository files navigation

Bashlib

This repository contains a suite of functionality to facilitate use and development for Solid

Requirements

  • Node >= 16.0.0

Setup

Using github

git clone git@github.com:SolidLabResearch/Bashlib.git
cd Bashlib
npm install 
npm run build

After the install, add an alias to your .bashrc for convenience:

alias sld="node /path/to/folder/.../bin/solid.js"

Using NPX

npx solid-bashlib

This will automatically install any dependencies. You can add an alias to your .bashrc for convenience:

alias sld="npx solid-bashlib"

Note that while more straightforward, using NPX incurs a performance penalty of up to 1 second! Consider a github install if you plan to use this tool regularly!

Documentation

For a tutorial and documentation, see the documentation website

Bashlib features in progress

  • Improve token management
  • Improve session management
  • Handle metadata
  • Handling multiple pods for a given WebID (pim:storage)
  • multi parameter removes: rm file1 file2 file3
  • Session refreshing on longer commands where session may time-out in the middle of command!
  • Make sure discovery of pim:storage and ldp:inbox are according to spec!
  • Resource verification on edit (compare before / after hash and notify if something may have changed)
  • Write concrete test cases and spin up local pod server to test
  • Improve consistency of internal logging
  • Improve consistency of exported Javascript interface
  • Interactive Solid shell? -> Not sure if this will be useful.
  • npm release