User & Technician Management API A robust and secure RESTful API built with the Laravel framework, designed to manage user and technician profiles. This project provides a complete backend solution for platforms requiring role-based authentication, profile management, and administrative oversight, such as a service booking application or a support platform.
Key Features Authentication & Authorization Role-Based Access Control (RBAC): The system enforces distinct roles for Administrators, Technicians, and Users, ensuring each role has access only to its designated API endpoints.
Secure Authentication: Utilizes a modern Laravel authentication system (e.g., Sanctum, Passport) to handle user registration and login securely.
Profile Management Self-Service Profiles: Users and Technicians can register and manage their own profiles, including personal details.
Admin Control: Administrators have comprehensive control to manage all users and technicians within the system.
Core Functionalities User & Technician Registration: Separate registration processes for both user types.
Admin Approval: A key feature where Administrators can approve newly registered technicians, bringing them into the active system.
User Management: Admin-level endpoints for managing users (e.g., deleting, deactivating, or blocking accounts).
Communication Oversight: The system provides mechanisms for administrators to monitor and manage communication channels between users and technicians.
Tech Stack Backend: Laravel (PHP Framework)
Database: MySQL / MariaDB
API Architecture: RESTful API
Version Control: Git
Installation & Setup Clone the Repository:
cd your-repository-name Install Dependencies:
composer install Configure Environment:
Create a copy of the example environment file: cp .env.example .env
Update the database credentials in the .env file.
Generate Application Key:
php artisan key:generate Run Migrations & Seeder:
Create the database tables and populate them with initial data (e.g., an admin account).
php artisan migrate --seed Run the Server:
Start the local development server to test the API endpoints.
php artisan serve