Skip to content

Afeh/authapp

Repository files navigation

AuthApp

AuthApp is a simple and secure authentication system built with modern web technologies.

Features

  • User registration and authentication
  • Password hashing and verification
  • Password reset
  • Session management
  • Email OTP verification
  • JSON Web Token (JWT) authentication
  • RESTful API design
  • OAuth 2.0 with Google

Installation/Project Setup

To install and run AuthApp, follow these steps:

Clone the repository:

git clone https://github.com/Afeh/authapp.git

Install dependencies

  1. Install Python 3.12.2
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt install python3.12.2
  1. Install Python 3.12-venv
sudo apt install python3.12-venv
  1. Create Virtual Environment
cd authapp
python3.12 -m venv venv
  1. Activate Virtual Environment
source venv/bin/activate
  1. Install Requirements
pip install -r requirements.txt
  1. Run Migrations
python manage.py migrate
  1. Create Superuser
python manage.py createsuperuser
  1. Run Server
python manage.py runserver
  • Note: You would have to make your own Email Server settings in settings.py

API Endpoints

Endpoint Method Description
/api/v1/auth/register/ POST Register a new user
/api/v1/auth/verify-email/ POST Verify user email
/api/v1/auth/login/ POST Login a user
/api/v1/auth/password-reset/ POST Reset a user's password
/api/v1/auth/password-reset-confirm/// GET Confirms a password request
/api/v1/auth/set-new-password/ PATCH Resets user password
/api/v1/auth/profile/ GET Tests user authentication
  • Check through postman collections for more information on the API endpoints

Technology Stack

  • Python
  • Django
  • REST Framework
  • JSON Web Token
  • OAuth 2.0

About

AuthApp is a simple and secure authentication system built with modern web technologies.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages