Join the Slack Channel!
See the project timeline.
Check out the ultimate ooth documentation wiki!
If you want to integrate this library with a GUI, you might want to check out the sister project Staart.
There are many ways you can use ooth.
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:
- minimal-mongo-auth - for mongodb authentication
- minimal-ssh - for express with ssh
The same minimal example as Vanilla JS, but using Vue.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!
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.
- ooth: extensible server package
- ooth-client: client package
- ooth-mongo: a MongoDB backend
- ooth-guest: login as a guest, no credentials needed
- ooth-local: login with username/email/password
- ooth-local-emailer: sends emails on
ooth-local
events (register, verify email, reset password...) - ooth-faceboook: login with Facebook
- ooth-google: login with Google
- ooth-profile: set profile data
- ooth-roles: manage user roles
- ooth-client: ooth client
- ooth-client-react: react utilities for ooth
- ooth-client-react-next: next utilities for ooth
- ooth-client-react-next-apollo: apollo utilities for ooth in next
- compose-next: utility to create providers that handle getInitialProps of children
Via yarn
:
yarn global add lerna
cd ooth
yarn run bootstrap
Via npm
:
npm i -g lerna
cd ooth
npm run bootstrap
Start an issue.
Support the development of this project on Patreon.