Skip to content

Repository files navigation

auth-v2

An auth system for Youthacks attendees and organisers.

Warning

This was made partly for fun learning, and is still a work-in-progress. If you want something that's more advanced, customisable, and/or secure, you should check out other open-source projects! Some examples are Zitadel, Authentik and Authelia.

What it can do

  • Log in with email OTP
  • Sign up with email OTP
  • Self-service user management, including profile, avatar upload, sessions, and external app permissions
  • Self-service external app management
  • Sign in to external apps with OAuth2*
  • Look really pretty 💖

*this is not fully complete, but it is somewhat spec-compliant and does work with standard libraries, like better-auth!

Getting started

To run the app, first copy .env.example to .env.local and edit the variables with a [!], including your Postgres database.

Tip

To spin up a Postgres database locally, copy docker-compose.example.yml to docker-compose.yml and generate a new password.

Then (with Docker installed), run docker compose up -d

After, you can install dependencies, migrate the database, and start the local dev server:

pnpm install
pnpm db:push
pnpm dev

Building For Production

To build the app for production, run:

pnpm build

Made with

  • TanStack Start
  • React + Tailwind CSS
  • Drizzle ORM
  • Elysia (oauth api)
  • React Email (email templates)

About

an auth system? maybe?

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages