Project Outline
This website is the main CCIT software solutions agency official website, I was responsible for every detail in the back end processes as this website consists of 3 main branches including front design and admin panel to control all website information shown on the front design and a full functionality client area (all the website dependes on multi language and has light and dark mode).
The admin panel consists of many modules as a back end processes like:
- Admin Authentication Module (with the ability to login to the admin panel, edit profile like name, email, ability to change the password and admin logout).
- Client Projects Module (including all CRUD operation of the client project with the ability to add project stages and edit progress of the project itself using AJAX techniques and the ability to assign the project to specific manager on the employees system).
- File Manager Module (including all CRUD operations with AJAX and has the ability to add multiple template files to be downloaded by the clients and search on specific client to access his uploaded documents needed).
- Tickets Module (including all CRUD operation with AJAX and has the ability to track the progress of the ticket with messaging system with replies and more and has the ability to assign any tickets to specific manager or employee in the employees system).
- Invoices Module (including all CRUD operations with AJAX and has the ability to print all invoices needed).
- Plans Module (including all CRUD operations with AJAX).
- Subscriptions Module (including all CRUD operations with the ability to add subscription to specific user and the system will automatically calculate subscription period effectively).
- Careers Module (including all CRUD operations with the job categories, locations, jobs itself and has the ability to view job applications, delete them or download all attachments require by the team and the ability to close or reopen the job vacancy any time you want and much more).
- Employees Module (with the ability to add a new employee, edit or delete with permissions on many modules as you like and the ability to restrict access to specific modules and much more).
- Services Module (including add services with optimized images using intervention/image laravel package, edit service, show and delete service. All these functionalities depends on AJAX technique).
- Clients Module (including add clients with optimized images using intervention/image laravel package, edit client, show and delete client. All these functionalities depends on AJAX technique).
- Testmonials Module (including add testmonials, edit, show and delete. All these functionalities depends on AJAX technique).
- Projects Module (including add a project with all details required and validations and optimized images, covers, integrate advanced text editor to the project creation process, show, edit and delete the project with AJAX technique).
- Blogs Module (including add a blog post with all details required and validations and optimized images, covers, integrate advanced text editor to the blog creation process, show, edit and delete the blog with AJAX technique and multi languages articles).
- Messages Module (including the ability for the front user to send message with all details and attachments using a form and reCAPTCHA v3 included, ability for admin to display the message and it will automatically change the status of the message and the ability to delete the message or download message attachments using AJAX technique).
- Settings Module (including updating all settings required for the website like contact us details, addresses, emails, phones and all social links).
The client area panel consists of many modules like:
- Client authentication system with register, login, forget password and reset password.
- Projects Module (including the ability to track project progress and track whether the stage complete or not and much more).
- File Manager Module (with the ability to access all templates uploaded by the admin panel and the ability to upload client files, delete them and much more).
- Tickets Module (with the ability to open a new ticket in many categories and the ability to track the progress of the ticket and it has a new messaging system with the admin panel and the employee responsible for that ticket).
- Invoices Module (with the ability to show all client invoices, download and print them as wanted).
- Subscriptions Module (with the ability to display all subscriptions related to the client and track the duration of that subscription plan).
The employee system panel consists of many modules like:
- The employee system including employee authentication processes and the ability to access specific module based on the permissions they get from the manager of the website
After completing the website in development environment, I was responsible for all the details belongs to the integration between front design and backend panels.
Used technologies for this website
This website depends on many technologies like :
- Laravel Framework v.9
- PHP
- MySQL
- JavaScript
- Ajax
- JQuery
- Bootstrap 5
- Css 3
- Html 5
- Git
- GitHub
What is special or new about this website?
There are many new things done for this project like:
- Multi language website.
- Dark and light mode website.
- Employees system with permissions related to specific project module.
- Chatting system between the client and admin with all messages related to everyone.
- Using loading spinners in the project and blog modules.
- Using reCAPTCHA V3 in contact us module.
- Add tinyMCE text editor to the admin panel with the ability to get all text editor data using Javascript.
- Image optimizing using Intervention/Image laravel package.
- Refactoring all my previous code and minifies it.