Secure by default

Auth System

A production-ready authentication system with local credentials, GitHub OAuth, session management, and role-based access control.

Local Auth

Email & password login with Passport.js local strategy and bcrypt hashing.

GitHub OAuth

One-click sign-in with GitHub using OAuth 2.0 via Passport.js.

Role-Based Access

User and admin roles with protected routes and middleware-level authorization.

Session Control

Express sessions with admin ability to view and terminate active user sessions.


Tech Stack

7 technologies

Node.js

JS runtime

Express

web framework

TypeScript

type safety

Passport.js

auth middleware

EJS

templating

GitHub OAuth

social login

Sessions

session state

Demo Credentials

Click any value to copy

user
jimmy123@gmail.com
jimmy123!
user
johnny123@gmail.com
johnny123!
admin
jonathan123@gmail.com
jonathan123!