تفاصيل العمل

Nexus - Advanced Social Media Platform

Project Type: Privacy-Focused Full-Stack Web Application | Social Networking Platform | Graduation Project

GitHub Repository: https://github.com/vd120/...

Project Description:

Nexus is a comprehensive full-stack social networking platform developed as a graduation project. The platform was designed and developed from the ground up to provide users with a modern environment for social interaction, content sharing, communication, real-time activities, notifications, and AI-powered functionality.

The project combines a Laravel-based backend, a modern server-rendered frontend, a dedicated real-time communication service, relational database management, caching and queue systems, secure authentication, browser push notifications, WebRTC communication, and artificial intelligence integration.

Nexus is not built as a traditional single-page application. Instead, it uses Laravel Blade for server-side rendering and Hotwire Turbo to provide fast navigation and dynamic page updates without requiring a complete page reload for every navigation action. This approach combines the advantages of server-rendered applications with a more responsive and interactive user experience.

The backend is developed using PHP and Laravel and is supported by Laravel Octane and FrankenPHP for application serving and performance. MySQL is used as the primary relational database, while Redis is used for caching, queue processing, and real-time infrastructure.

The platform also contains a dedicated Node.js real-time service using Socket.IO. The Socket.IO service communicates with the Laravel application and uses the Redis adapter to support real-time event distribution. This architecture separates the real-time communication layer from the main Laravel application and allows the platform to handle interactive events efficiently.

Authentication and account security are implemented using Laravel Breeze and Laravel Sanctum, with support for traditional session authentication, token-based authentication, Google OAuth authentication, and two-factor authentication using TOTP and Google Authenticator.

Nexus also integrates Web Push notifications using VAPID, allowing the platform to deliver browser notifications to users. WebRTC is integrated to provide real-time peer-to-peer voice and video communication capabilities.

The platform also integrates artificial intelligence through the OpenRouter API, providing an extensible foundation for AI-powered functionality within the application.

The frontend is developed using Laravel Blade, Tailwind CSS v4, Hotwire Turbo, Vanilla JavaScript, and Vite 6. JavaScript is used for interactive frontend functionality and integration with the Socket.IO real-time communication system.

The project demonstrates practical experience in full-stack web development, software architecture, backend development, frontend development, database design, authentication, application security, real-time systems, asynchronous processing, API integration, performance optimization, and integration of multiple independent technologies into one complete application.

Project Features:

1. User Authentication and Account Management

* User registration and account creation.

* Secure login and logout.

* Session-based authentication.

* Token-based authentication using Laravel Sanctum.

* Google OAuth authentication.

* Two-factor authentication (2FA).

* TOTP-based verification.

* Google Authenticator integration.

* Password recovery and password reset workflows.

* Authentication state management.

* Protected routes and authorized access.

* Account suspension handling.

* Dedicated authentication pages and workflows.

2. Social Networking

* User profiles.

* Personal account management.

* Social networking functionality.

* Social content creation and publishing.

* Interactive social feed.

* Dynamic content presentation.

* User interactions and engagement.

* Community-oriented social experience.

* Dynamic navigation between application sections.

3. Real-Time Features

* Real-time communication infrastructure.

* Node.js real-time service.

* Socket.IO integration.

* Persistent real-time connections.

* Event-driven communication.

* Real-time event delivery.

* Redis Adapter integration.

* Communication between the Laravel application and the Node.js service.

* Real-time updates without requiring users to manually refresh the page.

4. Notifications

* Browser push notifications.

* Web Push integration.

* VAPID-based notification system.

* Real-time notification delivery.

* Background notification support.

* Integration between notifications and the real-time infrastructure.

5. Voice and Video Communication

* WebRTC integration.

* Real-time voice communication.

* Video calling functionality.

* Peer-to-peer communication.

* Real-time communication integrated into the social platform.

6. Artificial Intelligence

* OpenRouter API integration.

* AI-powered functionality.

* Integration with external AI models.

* Extensible AI architecture for integrating AI capabilities into the platform.

7. Frontend Features

* Server-rendered pages using Laravel Blade.

* Responsive web interface.

* Tailwind CSS v4.

* Hotwire Turbo.

* Fast page navigation.

* Dynamic page updates.

* SPA-like navigation without building the application as a traditional SPA.

* Vanilla JavaScript functionality.

* Socket.IO client integration.

* Vite 6 frontend build system.

* Dynamic and interactive user interface.

8. Backend Features

* PHP backend.

* Laravel framework.

* Laravel Octane.

* FrankenPHP application server.

* Structured backend architecture.

* MySQL database.

* Redis caching.

* Redis queues.

* Background job processing.

* Asynchronous operations.

* Dedicated Node.js real-time service.

* Separation of normal HTTP application processing and real-time communication.

9. Security Features

* Secure authentication.

* Session management.

* OAuth authentication.

* Two-factor authentication.

* TOTP verification.

* Token-based authentication.

* Laravel Sanctum.

* Protected routes.

* Authentication and authorization controls.

* Account suspension management.

10. Performance and Infrastructure

* Laravel Octane for high-performance application serving.

* FrankenPHP.

* Redis caching.

* Redis-backed queues.

* Background processing.

* Asynchronous operations.

* Hotwire Turbo for faster navigation.

* Vite asset compilation and optimization.

* Dedicated real-time service.

* Separation of real-time communication from the main application server.

11. External Integrations

* Google OAuth.

* Google Authenticator.

* Laravel Sanctum.

* OpenRouter API.

* Web Push.

* VAPID.

* WebRTC.

* Socket.IO.

* Redis Adapter.

Technology Stack:

Backend:

* PHP

* Laravel

* Laravel Octane

* FrankenPHP

Frontend:

* Laravel Blade

* Tailwind CSS v4

* Hotwire Turbo

* Vanilla JavaScript

* Vite 6

Database and Infrastructure:

* MySQL

* Redis

* Redis Queues

* Redis Caching

Real-Time:

* Node.js

* Socket.IO

* Socket.IO Client

* Redis Adapter

Authentication and Security:

* Laravel Breeze

* Laravel Sanctum

* Google OAuth

* TOTP

* Google Authenticator

Communication:

* WebRTC

* Web Push

* VAPID

Artificial Intelligence:

* OpenRouter API

Development Skills Demonstrated:

* Full-stack web development.

* PHP and Laravel development.

* Frontend development.

* Backend development.

* Database design and management.

* REST/API integration.

* Real-time application development.

* WebSocket-based communication.

* Authentication and authorization.

* Application security.

* Two-factor authentication.

* OAuth integration.

* Push notification systems.

* WebRTC integration.

* AI API integration.

* Redis caching and queues.

* Background job processing.

* Performance optimization.

* Server-side rendering.

* Modern JavaScript development.

* Software architecture.

* Integration of multiple independent services.

* Scalable and maintainable application development.

Project Objective:

The main objective of Nexus was to design and develop a complete social networking platform while applying modern software engineering concepts and technologies.

The project focuses on solving practical challenges related to authentication, application security, database management, real-time communication, asynchronous processing, frontend performance, backend performance, external API integration, push notifications, AI integration, and scalable application architecture.

Nexus demonstrates the ability to design, develop, integrate, and maintain a complex full-stack web application consisting of multiple technologies and services working together as one platform.

بطاقة العمل