An open API service indexing awesome lists of open source software.

https://github.com/aydanrahimova/linkedinclone

This LinkedIn clone replicates key features of the professional networking platform, allowing users to manage profiles, create posts, comment, react, connect with others, follow organizations, and explore job opportunities. Advanced features include creating organizations and applying for jobs.
https://github.com/aydanrahimova/linkedinclone

lombok mail-sender mapstruct openapi postgresql spring-boot spring-data-jpa spring-security-jwt validation

Last synced: 12 months ago
JSON representation

This LinkedIn clone replicates key features of the professional networking platform, allowing users to manage profiles, create posts, comment, react, connect with others, follow organizations, and explore job opportunities. Advanced features include creating organizations and applying for jobs.

Awesome Lists containing this project

README

          

# LinkedIn Clone

## Overview

This project is a LinkedIn clone designed to replicate the core functionalities of the professional networking
platform.
It allows users to manage their profiles, create posts, comment on posts, connect with other users, follow
organizations, and explore job opportunities.
The platform also includes advanced features such as reacting to posts and comments, creating organizations, and
applying for jobs.
Below is a detailed breakdown of all the features implemented in this project.

## Features

- **User Profile Management**: Users can create and update their profiles, showcasing their skills, experience, and
education.
- **Posts and Comments**: Users can create posts, comment on others' posts, and engage with the community. Organization pages can also create posts and comment on behalf of the organization, enabling companies to interact with their audience directly.
- **Reaction**: Users can react to posts and comments (e.g., like, celebrate, etc.). Organization pages can also react to posts and comments, allowing companies to engage with the community in a meaningful way.
- **Connections**: Users can build their professional network by connecting with other users.
- **Organization Page Management**:
- Users can create and manage organization pages, allowing companies to establish their presence on the platform.
- The organization creator can add other admins to manage the page.
- Users can follow organization pages to stay updated with the latest posts and job listings.
- **Job Listings**: Companies can post job opportunities for users to explore.
- **Job Applications**:
- Users can apply to job listings using their profiles.
- Users can view job listings using personalized filters, such as location, job type, industry, experience level,
skills, working time (e.g., part-time, full-time), job title, and organization, to find relevant opportunities.
- Employees can view applications, after which users receive a notification that their application has been viewed.
- Employees can accept or reject applications, and users receive a notification via email regarding the decision.

## Technologies Used

- **Backend**: Java, Spring Boot
- **Authentication**: JWT (JSON Web Tokens) for user authentication
- **Database**: PostgreSQL
- **ORM**: Spring Data JPA
- **Security**: Spring Security
- **API Documentation**: Swagger
- **Email Service**: Spring Mail for sending email notifications
- **Scheduler**: Spring Scheduler for handling scheduled tasks
- **Build Tool**: Gradle
- **Version Control**: Git, GitHub