From 0575de90dc0e76c1b8ca9cc676af89bd301aec60 Mon Sep 17 00:00:00 2001 From: Jared Hanson Date: Fri, 26 Jan 2024 15:38:34 -0800 Subject: [PATCH] Add Stytch as sponsor. Thanks --- README.md | 10 ++++++++++ sponsors/stytch-dark.png | Bin 0 -> 23403 bytes sponsors/stytch.png | Bin 0 -> 28795 bytes 3 files changed, 10 insertions(+) create mode 100644 sponsors/stytch-dark.png create mode 100644 sponsors/stytch.png diff --git a/README.md b/README.md index e8b3bc87..4ddd68ac 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,16 @@ hooks for controlling what occurs when authentication succeeds or fails.

Auth. Built for Devs, by Devs
Add login, registration, SSO, MFA, and a bazillion other features to your app in minutes. Integrates with any codebase and installs on any server, anywhere in the world.
+
+
+ + + + + + +
+ API-first AuthN, AuthZ, and Fraud Prevention
The most powerful identity platform built for developers. Easily build and secure a modern auth flow with user & org management, multi-tenant SSO, MFA, RBAC, device fingerprinting, and more.

--- diff --git a/sponsors/stytch-dark.png b/sponsors/stytch-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..cd7afb957c43e9086747ec1d62501156f8234bbf GIT binary patch literal 23403 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 literal 0 HcmV?d00001 diff --git a/sponsors/stytch.png b/sponsors/stytch.png new file mode 100644 index 0000000000000000000000000000000000000000..1f43f77075c4830b6ed886b8d0199621bdde0b6f GIT binary patch literal 28795 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 Xs+9g!anj*UfEemyE*AgpaOZyj_PE~1 literal 0 HcmV?d00001