Show HN: Handshake – Next.js OAuth handler for 200 APIs
github.comHi HN! I'm Felipe, founder at Fiber (https://fiber.dev). This week we're open-sourcing a project called Handshake. It's a Next.js app that handles OAuth flows with over 200 APIs.
Handshake helps you with _integration_ instead of authentication. Think "Connect your Github repo" button instead of a "Sign In with Github" button.
Here's how it works:
1. Clone the repo
2. Modify `app/options.ts` to configure the APIs you want to use
3. Deploy to a subdomain like `handshake.yourdomain.com` (or wherever)
4. Then, to obtain eg. Github tokens from a user, send them to `HANDSHAKE/auth/github/redirect`
5. The app will handle the authorization and token exchange, before sending users back to you.
Why build this? We've been hosting Handshake internally for clients at Fiber for over a year, and the feedback has been great. But helping developers with OAuth is not core to our offering, so when companies come asking to use it, we've always had to turn them down. So we decided to open-source Handshake so they can use it for free.
Our north star for this project is ease of use. We built it to fit the stack we use internally: Typescript, Next.js, deployment to Vercel (soon other PaaS) etc. The other solutions we considered before building Handshake took a bit longer to setup (Docker, binaries, Kubernetes etc), or tried to do too much (eg. went open core to make money, required a database etc). Of course, Handshake won't be perfect for everyone either, and that's OK. :)
Check out https://handshake.cool for our demo and a list of supported APIs. Looking forward to your thoughts and feedback on how to make this better!
No comments yet.