Skip to content

PratikMane0112/WeChat

Repository files navigation

πŸš€ WeChat Social Platform - Enterprise DevOps Architecture

WeChat Social Platform Spring Boot React AWS Docker

Production-Ready Social Media Platform with Modern DevOps Pipeline

🌐 Live Demo β€’ πŸ“š Documentation β€’ πŸš€ Quick Start

## 🎯 Project Overview

Enterprise-grade social media platform built with Spring Boot and React, featuring real-time messaging, video calling, and comprehensive DevOps automation. Demonstrates production-ready architecture with AWS cloud deployment and CI/CD pipelines.

✨ Core Features

  • πŸ” JWT Authentication with Spring Security
  • πŸ’¬ Real-time Messaging via WebSocket/STOMP
  • πŸ“Ή Video Calling with ZEGOCLOUD integration
  • πŸ“± Social Feed with posts, stories, and reels
  • ☁️ Cloud Storage using Cloudinary and AWS S3
  • πŸš€ Auto-scaling ECS Fargate deployment

πŸ’» Technology Stack

Backend

  • Framework: Spring Boot 3.1.4, Java 17
  • Database: PostgreSQL 15 (Multi-AZ), Redis Cache
  • Security: Spring Security, JWT Authentication
  • Real-time: WebSocket/STOMP messaging
  • Testing: JUnit 5, Mockito (80%+ coverage)

Frontend

  • Framework: React 18.2.0, TypeScript
  • State: Redux Toolkit, Material-UI
  • Real-time: WebSocket client integration
  • Testing: Jest, React Testing Library

DevOps & Cloud

  • Containerization: Docker, AWS ECR
  • Orchestration: AWS ECS Fargate, Auto-scaling
  • CI/CD: Jenkins Pipeline, automated testing
  • Infrastructure: Terraform, CloudFormation IaC
  • Monitoring: CloudWatch, Grafana, Prometheus

πŸš€ Quick Start

Local Development

# Clone and setup
git clone https://github.com/PratikMane0112/WeChat.git
cd WeChat

# Start with Task runner
task dev:setup    # Setup environment
task dev:run      # Run all services
task dev:test     # Run comprehensive tests

Production Deployment

# Infrastructure provisioning
task infra:apply ENV=production

# CI/CD Pipeline
task ci:build     # Build and test
task cd:deploy    # Deploy to AWS ECS

πŸ”§ DevOps Features

CI/CD Pipeline

  • βœ… Automated testing (Unit, Integration, Security)
  • 🐳 Multi-stage Docker builds with optimization
  • πŸ”’ OWASP security scanning and vulnerability checks
  • πŸš€ Blue-green deployments with zero downtime
  • πŸ“Š Comprehensive monitoring and alerting

Infrastructure as Code

  • πŸ—οΈ Terraform modules for AWS infrastructure
  • ☁️ CloudFormation templates for complete stack
  • πŸ”§ 30+ Task automation scripts for operations
  • πŸ“ˆ Cost optimization with Spot instances and auto-scaling

Quality Assurance

  • πŸ§ͺ 80%+ test coverage with JUnit 5 and Mockito
  • πŸ” Static code analysis and quality gates
  • πŸ›‘οΈ Security-first approach with automated scans
  • πŸ“Š Performance monitoring and optimization

πŸ“š Documentation

πŸ”— Additional Resources

πŸ“‹ Key Commands

# Development
task dev:setup          # Complete environment setup
task dev:run            # Start all services locally
task ci:build           # Run full test suite

# Infrastructure  
task infra:apply         # Deploy AWS infrastructure
task deploy:production   # Production deployment
task health:check        # System health verification

# Testing
task test:backend        # Backend tests with coverage
task test:security       # Security vulnerability scans
task test:integration    # End-to-end testing

🀝 Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/amazing-feature)
  3. Run tests (task ci:build)
  4. Commit changes (git commit -m 'Add amazing feature')
  5. Push to branch (git push origin feature/amazing-feature)
  6. Open Pull Request

πŸ‘¨β€πŸ’» Author

Pratik Mane


πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


⭐ Star this repository if you found it helpful!

Built with ❀️ showcasing modern full-stack development and DevOps practices

Architecture Testing Deployment Monitoring

About

πŸ’¬ Real-time Chatting App built with secure messaging and instant delivery.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published