Projects

Booking-Management-System

Booking Management System

• Developed a scalable booking platform with Laravel 12, featuring a RESTful API for users and a Filament v5 admin dashboard for managing the entire system.
• Designed a robust booking and payment system featuring room availability validation, partial and full payments, Stripe Checkout, booking expiration, refunds, and invoice generation, leveraging database transactions, pessimistic locking, and idempotent payment processing to ensure consistency and eliminate race conditions under concurrent requests.
• Built modules for properties, rooms, cities, amenities, offers, reviews, favorites, payment methods, and reward points, with advanced filtering, searching, and pagination.
• Developed asynchronous features using Queues, Events, Listeners, Notifications, and Scheduled Jobs for booking confirmations, payment reminders, offer campaigns, arrival reminders, review requests, and booking expiration.
• Optimized performance and reliability using Redis caching, database transactions, eager loading, model observers, and a service-layer architecture following Laravel best practices.
• Applied Laravel best practices including Service Layer architecture, Policies, Form Requests, API Resources, Observers , Events & Listeners, Notifications, Queues, Scheduler, Localization, Spatie Permissions, and clean, maintainable code following SOLID principles.
• Implemented secure authentication with Laravel Sanctum, including email verification and OTP-based verification, multilingual support (English & Arabic), role-based access control using Spatie Permissions, and comprehensive admin analytics through Filament widgets and dashboards.

View Source Code
Laravel 12 PHP 8.2 MySQL REST API Filament v5 Redis Stripe Sanctum Bootstrap
Invoices-Management-System

Invoices Management System

• A website for managing invoices where admins and users can track the invoices statistics through the home page.
• Users can select the website language (English or Arabic) from a dropdown menu.
• Admin and user roles and their permissions are managed by the super admin based on database roles-permissions where users can have multiple roles and each role has many permissions which are secured using middlewares to avoid unauthorized actions. Roles and authorities can be added edited or deleted only by the Admin.
• Admins can add ,edit and delete sections and products and view invoices and clients reports where they can search for invoices using invoice type ,number or section and product in addition to start and end date to limit the search to a specific time period.
• Admins and Users can create, edit ,delete and archive invoices and add , delete or download invoices attachments.
• Admins and Users can also copy invoices and change their payment status to categorize invoices to paid ,partially paid and unpaid invoices.
• Admins can receive notifications for adding invoices by any user made using database notifications.

View Source Code
Laravel PHP MySQL HTML5 CSS3 Bootstrap
Jobee

Jobee Platform

• A job portal platform for job seekers in computer science related fields where users can create accounts ,view their personal profile ,edit profile details ,upload profile photos and resumes.
• Job seekers can explore diverse job opportunities or search for them using keywords, job title, job type or location and apply to jobs or save them for later.
• Admins can access a dashboard where they can view users and jobs and manage them.

Laravel PHP MySQL HTML5 CSS3 Javacsript Bootstrap
Blog

Blog

• A dynamic blog platform where users can create accounts ,view their personal profile ,edit and delete accounts , explore diverse posts, and engage through comments.

• Users can search for posts based on categories , authors and tags.

• Users can follow authors and subscribe for updates and receive mail notifications.

• The Admin can access a dashboard where they can add ,edit or delete posts and categories.

View Source Code
Laravel PHP MySQL HTML5 CSS3 Javascript Bootstrap