Intro:
Modern applications rely on secure authentication to protect user data. This challenge focuses on building a lightweight but robust login system that safely handles user registration, password storage, and session management.
Guidelines:
-
Design a simple authentication flow that supports user sign-up, login, and logout.
-
Use secure password hashing (e.g., bcrypt or Argon2) — never store plain text passwords.
-
Implement session or token-based login (cookies or JWTs).
-
Include password reset and session expiry mechanisms.
-
Provide admin control to revoke sessions or reset passwords when needed.