Modern Freelancing & Task Platform
Connecting customers and skilled freelancers with intelligent task recommendations, AI-powered content moderation, real-time messaging, and interactive workplace management.
- Backend: Laravel 13
- Reactivity & Frontend: Livewire 4 & Livewire Flux UI
- Styling: Tailwind CSS
- Database: PostgreSQL 15+
- Real-Time Broadcasting: Laravel Reverb (WebSockets)
- AI Moderation Engine: Laravel AI SDK powered by Google Gemini API
- Authentication: Laravel Fortify & Socialite (Google & Facebook OAuth)
- Task Creation & Validation: Post tasks with title, category, budget range, duration, and optional attachments.
- AI Moderation & Email Notifications: Automatic background task validation via
ModerateTaskWithAiJob. Sends automated email notifications (TaskApprovedMail/TaskRejectedMail) upon approval or rejection. - Task Applications Review: Inspect freelancer proposals, bid amounts, proposed timelines, and hire freelancers.
- Work Deliverables Management Hub: Dedicated client deliverables portal (
/client/deliverables) to review submitted work files, live demo links, approve work, or issue revision requests with detailed feedback.
- Smart Task Feed & Recommendation: Freelancer Dashboard features an intelligent task recommendation system based on weighted interaction history:
- View:
1.0| Click:2.5| Save:3.0| Apply:5.0| Share:1.5
- View:
- Proposal Bidding: Submit applications with proposed pricing, duration, and cover letters.
- Active Jobs Workspace: Track ongoing jobs, submit deliverables (file attachments and live URL links), or request deadline extensions.
- Real-Time Client Messaging: Instant WebSocket chat powered by Laravel Reverb.
The application strictly enforces a clean two-tier backend design pattern:
- Service Layer (
App\Services): Encapsulates all core business logic, task approvals, submission processing, and extension requests. - Repository Layer (
App\Repositories): Encapsulates Eloquent database queries, status filtering, and data retrieval.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
git clone https://github.com/your-username/task-bayan.git
cd task-bayanRun the automated project setup script:
composer run setupCopy .env.example to .env and fill in required keys:
APP_NAME=TaskBayan
APP_URL=http://localhost:8000
# Database Configuration (PostgreSQL)
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=task_bayan
DB_USERNAME=postgres
DB_PASSWORD=your_password
# WebSockets Configuration (Laravel Reverb)
BROADCAST_CONNECTION=reverb
REVERB_APP_ID=your_reverb_app_id
REVERB_APP_KEY=your_reverb_app_key
REVERB_APP_SECRET=your_reverb_app_secret
REVERB_HOST="127.0.0.1"
REVERB_PORT=8080
REVERB_SCHEME=http
# AI Content Moderation (Google Gemini API)
GEMINI_API_KEY=your_google_gemini_api_key
# OAuth Credentials (Google & Facebook)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_CALLBACK_REDIRECT=http://localhost:8000/oauth/google/callback
FB_CLIENT_ID=your_facebook_client_id
FB_CLIENT_SECRET=your_facebook_client_secret
FB_CALLBACK_REDIRECT=http://localhost:8000/oauth/facebook/callbackphp artisan reverb:installLaunch all development services (Laravel Server, Queue Listener, WebSockets Reverb, and Vite compiler) concurrently:
composer run devThis project is licensed under the MIT License.







