Core Solid logic with minimal solid-oidc authentication (JSS variant)
npm install solid-logic-jss
Core Solid logic with minimal solid-oidc authentication (JSS variant)
A fork of solid-logic that replaces @inrupt/solid-client-authn-browser with the minimal solid-oidc library.
| Aspect | solid-logic (original) | solid-logic-jss |
|--------|------------------------|-----------------|
| Auth library | @inrupt/solid-client-authn-browser (~150KB) | solid-oidc (~20KB) |
| Auth code | Compiled/minified | 584 lines, readable |
| Dependencies | Many | Minimal |
``sh`
npm install solid-logic-jss rdflib
> Note: rdflib is a peer dependency.
`js
import { solidLogicSingleton, store, authn, authSession } from 'solid-logic-jss'
// Check current user
console.log('Current user:', authn.currentUser())
// Login
await authSession.login({
oidcIssuer: 'https://solidcommunity.net',
redirectUrl: window.location.href
})
// Make authenticated requests
const response = await authSession.fetch('https://pod.example/private/data.ttl')
`
`html`
This fork maintains API compatibility with solid-logic. The authSession object provides the same interface as @inrupt/solid-client-authn-browser:
- authSession.info.webId - Current user's WebIDauthSession.info.isLoggedIn
- - Login statusauthSession.login(options)
- - Initiate loginauthSession.logout()
- - Log outauthSession.fetch(url, init)
- - Authenticated fetchauthSession.handleIncomingRedirect(options)
- - Handle OIDC redirectauthSession.events.on(event, callback)
- - Session events
`js``
import {
solidLogicSingleton, // Complete singleton instance
store, // RDF store
authn, // Authentication logic
authSession, // Authentication session
ACL_LINK, // ACL constants
// Error classes
UnauthorizedError,
NotFoundError,
FetchError
} from 'solid-logic-jss'
- solid-oidc - Minimal OIDC client
- solid-logic - Original library
- JavaScriptSolidServer - JSS ecosystem
- Original solid-logic by SolidOS team
- solid-oidc based on work by uvdsl
MIT