supertokens / docs

SuperTokens documentation
39 stars 70 forks source link

Us vs Ory Kratos #35

Open rishabhpoddar opened 3 years ago

rishabhpoddar commented 3 years ago

Questions

rishabhpoddar commented 3 years ago

See these questions answered for SuperTokens here: https://github.com/supertokens/docs/issues/28

Describe the dev setup experience (how many steps and what are they + time overall)

Documentation review

Decent, as long as you know what exactly you are looking for, and how Kratos works.

Can you easily add a custom social provider?

Yes, it does. You can configure the params for the generic open ID provider using their config.yml file. For extracting of payload from the provider, you need to give external Jsonnet file - this can be a bit of a learning curve + the code for this lies outside your main backend code base.

How well do they support various platforms and SDKs?

How can we go about customising the UI? From colours to full customisation

How do we do things like handle sign up success?

Can sessions be used with httpOnly cookies?

Setting up for the two use cases of multi tenancy?

Kratos doesn't have multi tenancy (in terms of different user pools). They have a work around where you can manually create schemas in your db (as one user pool) and point one instance of kratos to that.

In terms of supporting multiple sub domains, that's a function of the UI and session management - something they leave to the end user.

If one needs to do something like paginating across all users in the app in their API, how can they do that?

They have APIs for pagination of users. You would need to query them manually.

If someone wants to tweak the sign up / sign in APIs, how can they do that?

How would adding custom sign up fields work?

How would adding custom sign up validators work?

How to implement sign out functionality?

What if you want to embed the sign up / in page into your website UI (As opposed to opening a new tab..). Is that possible?

What are features that they provide that we don't?

Will their solution work with serverless env like in nextjs or netlify?

if you want to add a password strength meter to registration, how does it work

Changing password validation(or some similar feature) for sign up does this get propagated to other places(Signin, password reset)

what are the supported databases

Is there a mechanism for protecting routes (similar to the supertokens auth wrapper). How easy is it to protect multiple pages and what does the code look like?

If a session expires is there a pop-up? does the user have to handle it?

mobile implementation, IOS and Android

implementation with ssr

API customisability

sharing session across sub domains

How to disallow sign up and only have sign in?

Can you make the provider's frontend talk to your API instead of theirs? And then your APIs talk to their API.

Provider doesn't have a frontend.

Does it provide Email OTP as a feature?

Can a user be re-authenticated when visiting a protected route?

rishabhpoddar commented 2 years ago

https://drive.google.com/file/d/13II9NWmxxh-kBKqPeE9eZCRDi9oIM2nR/view?usp=sharing

rishabhpoddar commented 2 years ago

Experience with Ory

From a technical point of view:

rishabhpoddar commented 2 years ago

https://supertokens.slack.com/archives/DGWQ7RWBV/p1655273998071419

rishabhpoddar commented 8 months ago

https://docs.google.com/document/d/1FuX_Aq7rK5tDTlBkGOoQlSpWA9aaIwUUdSmbtSKboD0/edit