Skip to content

Trunks-Pham/Yourvibes-Social-Media-Platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

Yourvibes-Social-Media-Platform

YourVibes is a next-generation social media ecosystem, combining web, mobile, backend, AI services, and admin CMS into a unified platform.
This repo hosts the YourVibes Web Client built with React (Next.js & TypeScript).


YourVibes Ecosystem Overview

The YourVibes ecosystem is composed of multiple services working together:

  • Backend Service (Golang)yourvibes_server_golang
    Handles API requests, business logic, and integrations. Built with Go (Gin-Gonic).

  • Mobile App (React Native)yourvibes_mobile_app_android
    Cross-platform mobile app for Android/iOS users.

  • Web Client (React/Next.js)yourvibes-client
    The main web application for end-users.

  • Admin CMS (React/Next.js)yourvibes-cms
    A content management system for platform administrators.

  • AI Service (Python)yourvibes_ai_service_python
    AI-powered content moderation (e.g., censoring sensitive content).

  • Core Infrastructure

    • Redis → Caching for performance.
    • RabbitMQ → Asynchronous communication (push notifications, AI service jobs).
    • gRPC → Efficient communication between Golang backend & Python AI service.
    • PostgreSQL → Primary relational database.

Architecture Diagram:
Ecosystem Architecture


Database Structure

The system uses PostgreSQL with a schema designed to support all core social media functionalities.

Entity Relationship Diagram (ERD):
Database ERD

Key Tables

  • users: User accounts, profile info, roles.
  • posts: User posts with privacy settings (public, friend_only, private).
  • comments: Nested (infinite) comment threads.
  • conversations & messages: Direct messaging system.
  • notifications: User alerts (new posts, comments, requests).
  • friend_requests, friends: Friendship handling.
  • advertises, new_feeds: Ads and feed distribution.
  • reports, bills: Moderation reports & ad billing.

Features

User Functions

  • Posts & Privacy: Share posts with custom visibility settings (public, friend_only, private).
  • Engagement: Like, share, and multi-layer commenting (AI-censored if sensitive).
  • Notifications: Real-time socket notifications + dashboard view.
  • Friends: Add/unfriend, suggestions, birthdays.
  • Profiles: Manage avatar, cover, personal info with privacy controls.
  • Newsfeed & Trending: Personalized feed + trending posts (based on interaction thresholds).
  • Advertising: Promote posts (33,000 VND/day, max 30 days).
  • Featured Posts: Automatically boosted if engagement thresholds are met.
  • Messaging: Socket-based chat (1:1 and group) with roles (owner/member).
  • Authentication: Email signup/login + Google login.

Admin Functions

  • Revenue Dashboard: System earnings tracking.
  • Reports Management: Handle user, post, and comment reports.
  • Moderation Tools: Block/unblock posts, comments, or users (with email notifications).
  • Transactions: Review ad payment history.
  • Super Admin: Manage admin accounts.

Cron Jobs

  • Remove expired ads & featured posts.
  • Push posts to friend feeds.
  • Enforce posting/boost limits.

Contributing

We contributions! Follow these steps:

  1. Fork this repo
  2. Clone your fork:
    git clone https://github.com/<your-username>/yourvibes-.git
    cd yourvibes-

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors