SimpleWebAuthn Project
Overview
This monorepo contains two complimentary libraries to help reduce the amount of work needed to incorporate WebAuthn into a website. The following packages are maintained here:
An additional package is also included that contains shared TypeScript definitions:
See these packages' READMEs for more specific implementation information.
API Documentation
In-depth documentation for all of the packages in this project is available here: https://simplewebauthn.dev/docs/
Example
For a practical guide to implementing these libraries, take a look at the example project. It includes a single-file Express server and a few HTML files that, combined with the packages in this repo, are close to all it takes to get up and running with WebAuthn.
Development
Install the following before proceeding:
- Node.js 18
- Deno 1.36.x
After pulling down the code, set up dependencies:
$> npm install
To run unit tests for all workspace packages, use the test
series of scripts:
# Run All tests
$> npm run test
# Run an individual package's tests
$> npm run test:browser
$> npm run test:server
Tests can be run in watch mode with the dev
series of scripts:
$> npm run dev:browser
$> npm run dev:server