# Laravel Authentication System πŸ” A complete authentication setup with Passport, Sanctum, JWT, Fortify, Starter Kit, and manual implementations for both API and Web β€” all in one place. [GitHub Repository](https://github.com/Nima8FT/Laravel-Authentication-System) Version: [1.0.0] ## Table of Contents 1. [πŸš€ Overview](#1-overview) 2. [✨ Features](#2-features) 3. [πŸ› οΈ Installation](#3-installation) 4. [βš™οΈ Configuration](#4-configuration) 5. [πŸ’» Usage](#5-usage) 6. [πŸ—‚οΈ Project Structure](#6-project-structure) 7. [πŸ§ͺ Running Tests](#7-running-tests) 8. [🀝 Contributing](#8-contributing) 9. [πŸ“ License](#9-license) --- ### 1. Overview This repository implements all major Laravel authentication packages for both API and web contexts. For API, it integrates Passport, Sanctum, and JWT; for web, it uses Fortify, the Laravel Starter Kit, and a manual implementation. The goal is to provide a one-stop reference so developers can immediately leverage a complete auth stack without extra wiring. --- ### 2. Features **πŸ” API Authentication** - **Laravel Passport** – OAuth2-based full-featured API authentication - **Laravel Sanctum** – Lightweight SPA token authentication - **JWT** – Using `tymondesigns/jwt-auth` for stateless APIs **🧭 Web Authentication** - **Fortify** – Backend auth logic (no UI) - **Starter Kit** – Prebuilt Blade or Vue scaffolding - **Manual** – Fully custom controllers & middleware **πŸ’‘ Common Features** - User registration, login, logout, and deletion - "Remember Me", email verification, password reset - Social login (Google, Facebook) - Two-Factor Authentication (2FA) - Session management (β€œLogout Other Devices”) - Profile management, CAPTCHA protection --- ### 3. Installation ```bash git clone https://github.com/Nima8FT/Laravel-Authentication-System.git cd Laravel-Authentication-System composer install cp .env.example .env php artisan key:generate php artisan migrate ``` --- ### 4. Configuration Update your `.env` file with the proper DB credentials and any third-party API keys for social login or CAPTCHA. --- ### 5. Usage - Use Postman or your preferred client to interact with the API routes. - Web routes are accessible via your browser. --- ### 6. Project Structure - `app/Http/Controllers/Auth/` - Custom auth logic - `routes/web.php` and `routes/api.php` - Separate route files for web and API - `config/auth.php` - Auth guard configuration --- ### 7. Running Tests ```bash npm run dev php artisan serve ``` --- ### 8. Contributing 1. Fork this repository. 2. Create a branch: `git checkout -b my-feature`. 3. Make your changes and commit them: `git commit -m 'Add some feature'`. 4. Push to the branch: `git push origin my-feature`. 5. Submit a pull request. --- ### 9. License This project is open-sourced software ---