Skip to content
This repository has been archived by the owner on Oct 24, 2019. It is now read-only.

JS client authentication library for Solid browser-based clients.

License

Notifications You must be signed in to change notification settings

solid-contrib/solid-auth-tls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solid-auth-tls

NPM Version Build Status Coverage Status

JS client authentication library for Solid browser-based clients. Used inside solid-client.

Usage

The solid-auth-tls client can be used from Node as well as browser processes.

Within Node

const auth = require('solid-auth-tls')

auth.login({ key: 'path/to/tls-key.pem', cert: 'path/to/tls-cert.pem' })
  .then(webId => /* ... */)
  .catch(err => /* ... */)

Within the Browser

A UMD bundle is provided so that you can do the following (after including the bundle via an HTML <script> tag):

SolidAuthTLS.login() // the browser automatically provides the client key/cert for you
  .then(webId => /* ... */)
  .catch(err => /* ... */)

You can also use a module bundler such as webpack and require the module like in the node example. When using webpack you need to include the following plugin(s) in order to keep webpack from trying to resolve node modules such as fs and https. Add this to your webpack.config.js:

const webpack = require('webpack')

module.exports = {
  // ...
  plugins: [
    new webpack.DefinePlugin({ 'global.IS_BROWSER': true })
    new webpack.optimize.UglifyJsPlugin(/* ... */)
  ]
}

This makes sure that code paths that require node modules (for use within node) become dead code and get removed by the UglifyJsPlugin's dead code eliminator.

About

JS client authentication library for Solid browser-based clients.

Resources

License

Stars

Watchers

Forks

Packages