2.8 KiB
2.8 KiB
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.
Version: [1.0.0]
Table of Contents
- 🚀 Overview
- ✨ Features
- 🛠️ Installation
- ⚙️ Configuration
- 💻 Usage
- 🗂️ Project Structure
- 🧪 Running Tests
- 🤝 Contributing
- 📝 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-authfor 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
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 logicroutes/web.phpandroutes/api.php- Separate route files for web and APIconfig/auth.php- Auth guard configuration
7. Running Tests
npm run dev
php artisan serve
8. Contributing
- Fork this repository.
- Create a branch:
git checkout -b my-feature. - Make your changes and commit them:
git commit -m 'Add some feature'. - Push to the branch:
git push origin my-feature. - Submit a pull request.
9. License
This project is open-sourced software