Modules implementing Solid Application Interoperability Specification
package | |
---|---|
Solid Applications | @janeirodigital/interop-application |
Solid Authorization Agent | @janeirodigital/interop-authorization-agent |
Default setup assumes docker
command available, and runs it as non-root user.
Also mkcert is required.
The setup is using modified Makefile
and docker-compose.yaml
from docker-shared-services
Requires node.js 22 or higher with corepack Uses pnpm as package manager.
corepack prepare pnpm@latest --activate
corepack enable pnpm
- generate a classic github token (tick only
read:packages
scope) - Modify
~/.npmrc
(per-user config file) and add line//npm.pkg.github.com/:_authToken=
and the generated token.
sudo mkdir /etc/resolver/
sudo sh -c 'echo "nameserver 127.0.0.1" > /etc/resolver/docker'
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
./docker-mac-routes-add.sh
pnpm install
pnpm build
pnpm test
To setup mkcert local CA
mkcert --install
To create local certificates
make cert-install
To start local development
make up
It will run the following:
Run from packages/css-solid-fixture. Used for solid storage instances and solid-oidc provider.
Available on https://pod.docker, default demo account is [email protected]
with password
.
Run from packages/service. Available on https://sai.docker (API only)
Run from ui/authorization. Available on https://ui.sai.docker , requires signing up with UI first and later signing up in with the service (Connect server). Dev config uses local CSS as default provider when input left empty.
Run from examples/vuejectron. Available on https://vuejectron.docker , requires signup and authorization. Dev config uses local CSS as default provider when input left empty.
The translation project for all relevant components is hosted thanks to the courtesy of Weblate Libre hosting.
This project is funded through the NGI Zero Entrust Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.