Omega Social Media
A Romanian social media platform built with Laravel 12 and Vue.js 3, with an Instagram/TikTok-inspired navigation flow. It supports posts, reels, stories, real-time messaging, live streaming, a marketplace, job listings, advertising campaigns, and creator monetization through Stripe Connect. A companion Expo (React Native) mobile app talks to the same backend through a Sanctum-protected API.
Live Demo
Try the product at https://demo-social.omega-studio-software.com. The demo instances go live shortly.
| Account | Role |
|---|---|
admin@demo.omega-studio-software.com | Admin |
user@demo.omega-studio-software.com | User |
moderator@demo.omega-studio-software.com | Moderator |
All demo accounts use the password demo1234.
Buy web version on Omega Marketplace | Buy mobile version on Omega Marketplace
Key Features
Social Core
- Posts & Reels — Text, image, and video posts plus vertical scrollable short-form reels, with likes, saves, pins, view and share counters.
- Stories — Story creation, viewing, and likes. A scheduled command clears expired stories every day.
- Comments — Threaded comments and replies with likes and pinning.
- Discover — Friend recommendations based on location and the social graph, plus discover, following, and nearby feeds.
- Messaging — Real-time chat over WebSockets (Laravel Reverb) with chat invites and group chats.
- Search — Users, posts, and hashtags.
- Moderation — Reports, user blocking, bans, and an admin panel for content and user management.
Monetization & Commerce
- Creator Payments — Stripe Connect integration for creator payouts, with a platform commission rate.
- Credits — Users buy credit packs, spend them on live-stream donations, and convert credits to cash within configurable limits.
- Withdrawals — Withdrawal requests processed through a queued transfer job.
- Live Streaming — Agora-powered broadcasts with live chat, donations, and a donation leaderboard.
- Marketplace — Product listings with categories, bookmarks, and publish/unpublish flow.
- Jobs Board — Job listings with categories, bookmarks, and publish/unpublish flow.
- Advertising — Business accounts create ad campaigns, pay for them via Stripe, and track clicks.
Platform & Operations
- Dual SPA — Separate desktop and mobile-optimized Vue single-page apps, plus Livewire-based business and auth pages.
- Mobile App — Expo SDK 54 app with Expo Router, NativeWind, secure token storage, push notifications, Agora live streaming, and Stripe payments.
- Social Login — Google, Apple, Facebook, Twitter, and Telegram providers, each enabled by an environment flag.
- Roles & Permissions — Spatie Permission with an admin role middleware and an admin panel under a configurable prefix.
- Media Processing — FFmpeg video and audio conversion and compression in queued jobs.
- Localization — Full Romanian language support (default locale
ro) with a translations check command. - Demo Mode — Optional demo mode with seeded demo accounts and a reset command.
- Monitoring — Laravel Horizon, Spatie Health, Sentry, Nightwatch, and a log viewer.
Tech Stack
Languages
- PHP 8.2+
- JavaScript / Vue 3
- TypeScript (mobile app)
Backend
- Laravel 12
- Laravel Sanctum 4 (mobile API tokens)
- Laravel Reverb (WebSockets)
- Laravel Horizon 5 (Redis queues)
- Laravel Cashier 16 + Stripe PHP SDK
- Livewire 3
- Spatie Permission, Health, Backup
Web Frontend
- Vue.js 3 with Vue Router and Pinia
- Tailwind CSS 4
- PrimeVue 4
- Vite 5
- Laravel Echo + pusher-js
- Agora RTC Web SDK
Mobile
- Expo SDK 54, React Native 0.81, React 19
- Expo Router, NativeWind, Zustand, TanStack Query
@stripe/stripe-react-native,react-native-agora
Tools
- Pest 3, Larastan, Laravel Pint, Laravel Dusk
- Laravel Envoy (deployment)
- FFmpeg (php-ffmpeg)
System Requirements
- Linux or macOS
- PHP 8.2+ (the project's Boost guidelines reference PHP 8.3)
- Composer 2.x and Node.js with npm
- MySQL
- Redis (queues, Horizon, and the
phpredisclient configured in.env.example) - FFmpeg and FFprobe for video and audio processing
- For the mobile app: Node.js, npm, and an Expo account for EAS builds
The mobile app runs in Expo Go, but live streaming (Agora) and native Stripe payments are unavailable there because their native modules are not loaded. Use a development client build for the full feature set. See the Getting Started guide.