Skip to content

Muryginds/SocialNetwork

Repository files navigation

Quality Gate Status Security Rating Lines of Code Reliability Rating Coverage

img.png

Welcome to Zerone, a social networking platform created by a group of seven developers using the Scram methodology. Zerone Network is designed to transform the way we connect and interact online, offering a rich set of features for a seamless and enjoyable social media experience.

Key Features

  • Enhanced User Profiles: Create user profiles, complete with personal information, profile photos, alerts settings, and an intuitive address-filling assistant for a smoother registration process.
  • Secure Privacy Settings: Protect your account with robust security measures. Easily change your account password and email, ensuring your information remains confidential.
  • Content Sharing: Share your thoughts, news, photos, articles, and engaging comments with your friends and connections. Express appreciation for posts through the "like" feature, fostering a positive and supportive community.
  • Socialization: Build meaningful connections by adding friends to your network. Take control of your social circle by utilizing the blacklist feature.
  • Real-Time Messaging: Stay connected with your contacts through instant messaging using WebSocket technology. Experience real-time communication without any delays.
  • Moderation panel: Moderate comments, posts or even user avatars.

Technology Stack

ConnectHub is built on a solid foundation of modern and reliable technologies

  • Spring Boot 3.0.6: Security, Data, Cloud, Web, AOP, Test
  • Postgres: A reliable and efficient PostgreSQL database for data storage and management.
  • Docker: Containerize the application for easier deployment and scalability.
  • Logback: A high-performance logging framework for effective log management.
  • Redis: Utilizing Redis as an in-memory data structure store to enhance performance and caching.
  • Websocket: Employing WebSocket technology to enable real-time messaging for seamless communication.
  • Jooq: An efficient library for database access.
  • Kafka: Utilizing Kafka for scalable and distributed event streaming.
  • Thymeleaf: A robust templating engine for server-side rendering.
  • Swagger: An API documentation tool to facilitate seamless interaction with the API.
  • External API Integration: Connecting with various external APIs, such as GDrive, Cloudinary, VK, and dadata, to enrich user experience and functionality.
  • Testcontainers: Ensuring reliable and reproducible testing using containerization.
  • Monitoring (Prometheus, Grafana): Keeping track of system metrics and health for performance optimization.
  • GitHub Actions (CI/CD): Automating continuous integration and deployment to streamline the development process.
  • Sonar: Static code analyser improves code quality

Microservice Architecture

ConnectHub follows a microservice architecture to ensure modularity and scalability

  • Frontend: Handles the user interface and user interactions.
  • Backend: Manages core business logic and data processing.
  • Admin Panel: Offers an intuitive interface for administrative tasks.
  • Api-gateway, Eureka: Facilitates API communication and service discovery.
  • Mail Service: Handles email notifications and communication.
  • Grafana: Enables monitoring and visualization of system metrics.

Additional Libraries

In addition to the powerful technology stack, ConnectHub utilizes the following libraries for enhanced functionality