/ooth

User identity/authentication/accounts management microservice

Primary LanguageJavaScriptMIT LicenseMIT

OOTH - a user identity management system

Join the Slack Channel!

See the project timeline.

Documentation

Check out the ultimate ooth documentation wiki!

Staart

If you want to integrate this library with a GUI, you might want to check out the sister project Staart.

Examples

There are many ways you can use ooth.

Vanilla JS

A good starting point could be this minimal example. Reading through the two files of client and server code is recommended.

Slight variations of the minimal example:

Vue.js

The same minimal example as Vanilla JS, but using Vue.js.

With UI and next.js

The most complete example with a starting UI with all the main user account flow is programmed with next.js and can now be found in the staart project!

With create-react-app

The following two examples use create-react-app as a client. If you don't want to use cra you can still analyze the server folders and the code parts that use ooth-client independently.

  • standalone - ooth runs as a microservice separate from api, auth transfer is done via JWT.
  • integrated - ooth runs in same process as api, no need for JWT.

Packages

Core Packages

Backends

Strategies

Client Packages

Utilities

  • compose-next: utility to create providers that handle getInitialProps of children

Development

Via yarn:

yarn global add lerna
cd ooth
yarn run bootstrap

Via npm:

npm i -g lerna
cd ooth
npm run bootstrap

Feature requests, Bugs, Contributions

Start an issue.

Support

Support the development of this project on Patreon.