DEV Community

Cover image for 5 reasons why you should use PropelAuth
propelauthblog for PropelAuth

Posted on • Originally published at blog.propelauth.com

5 reasons why you should use PropelAuth

PropelAuth is a hosted, configurable authentication service. Below are five reasons why you should consider it for your product.

1. Full Auth UX before you write any code

Once you sign up for PropelAuth, you immediately have your own authentication service. This includes a lot behind the scenes, but to your end-users, the first thing they will see is this

Initial screen

You can brand your site easily by supplying your product's colors and a logo. This branding applies not only to all your auth pages, but also to any emails that we send (forgotten passwords, email confirmations, user invites, etc.).

A user configuring hosted pages

Also, this branding includes the URL your customers are on. We support custom domains so your users see your auth pages on https://auth.yourdomain.com, not https://yourname.propelauth.com.

2. Easily extensible

Since PropelAuth hosts your auth pages, we simplify auth integrations. Below you can see a user adding a "Sign in with Google" button (commonly called social login).

A user configuring hosted pages

You don't need to worry about managing an OAuth flow or setting up redirect pages. Add your configuration, click save, and your users can sign in with Google.

3. Out of the box B2B support

For B2B auth, each user can belong to one or more "organizations". Most auth tools leave adding this as an exercise for you or there are a lot of missing features.

With PropelAuth, B2B auth is a first-class feature. If enabled, your hosted pages includes customer portals so your end-users can create and manage their organizations. We provide hierarchical roles that are both easy to understand and supports most B2B auth use cases.

A customer portal for managing FakeCorps org

Our libraries hide a lot of the complexities of B2B auth. For Flask (python), for example we have the @auth.require_org_member decorator

@app.route("/api/org/<org_id>/admin")
@auth.require_org_member(minimum_required_role=UserRole.Admin)
def admin_only(org_id):
    return f"You are at least an admin in {current_org.org_name}" 
Enter fullscreen mode Exit fullscreen mode

which makes sure the request is from a valid user, that is a member of a specified organization, and is at least an Admin within that organization.

Since we are talking about libraries...

4. Easy to use libraries

Once you've set up your auth pages, you need to integrate your product. It is our job to understand auth, not yours. Our libraries are easily used by anyone - security background or not.

Our frontend libraries integrate with your PropelAuth auth instance, allowing you to easily do things like:

  • Determine if the current user is logged in or not
  • Get metadata for the current user
  • Make authenticated requests to your backend

Additionally, our backend libraries allow your backend to easily:

  • Reject unauthenticated requests
  • Understand which user made a request
  • Get user metadata for any user

There's more to discover, but with these building blocks you can quickly and easily build a secure product.

We currently support React + vanilla Javascript on the frontend and Node/Express + Flask on the backend. If you want to use a language or framework that you use that we don't yet support, please reach out at support@propelauth.com.

5. Clear documentation

We consider documentation to be one of the most important parts of our product.

Our documentation includes a step-by-step getting started guide, example apps built from scratch, guide where we added auth to an existing app, and full references for our libraries.

Bonus: It's free to try

Lastly, it's free to try out locally. You only pay when you want to go live. Check us out at https://www.propelauth.com.

If you have any questions/thoughts for us, please reach out at support@propelauth.com.

Top comments (0)