Skip to content

==> Building LinkedIn Clone App with React Js + Vite + TypeScript + Tailwind CSS + Firebase Realtime Database + Vercel Hosting + User Authentication (a mobile-friendly)

License

Notifications You must be signed in to change notification settings

saddamarbaa/LinkedIn-clone-app-react-typescript

Repository files navigation

LinkedIn Clone - Full-Stack Professional Networking Platform

Welcome to my LinkedIn Clone project! This dynamic, full-stack professional networking platform mimics key features of LinkedIn, built using React, TypeScript, Vite, React Router, and Tailwind CSS. It includes functionalities such as user authentication, profile management, post creation, job listings, and more, providing a seamless and engaging user experience.

Build Status License React TypeScript Version Last Commit


✨ Features

Core Features:

  • User Authentication: Secure user sign-up and login functionality using email & password or OAuth (Google).
  • Shimmer UI: Loading placeholders for a smoother user experience during data fetching.
  • Responsive Design: Fully responsive UI optimized for both desktop and mobile devices.
  • User Profiles: View and edit personal profiles, showcasing professional details like job title, education, and work experience.
  • Create and Manage Posts: Users can create posts, add comments, like posts, and view post interactions such as the number of views.
  • Delete Posts (To Be Implemented): Users will soon be able to delete their own posts.
  • Network Page: View your network and connections in a dedicated network page.
  • Notifications: Stay updated with new notifications on the notifications page.
  • Jobs Section: Explore job listings and apply for jobs directly from the platform.
  • Connections: Manage connections, see who is in your network, and connect with others.
  • Dark/Light Mode: Toggle between dark and light mode for a personalized user experience.
  • Loading Skeleton: Improved page loading experience with a skeleton loader for smoother transitions during data fetches.

Planned Features:

  • Delete Posts: The ability to delete posts is in the pipeline.
  • Skills Endorsements: Endorse the skills of your connections to boost their credibility.
  • Profile Analytics: View who has visited your profile and track the performance of your posts.
  • Advanced Search: Search for people, companies, and jobs with advanced filters.
  • Real-Time Messaging: Chat with connections through real-time messaging (WebSocket integration planned).

Bonus Features:

  • Optimized Performance: Enhanced loading performance and interaction for a smooth user experience.
  • Responsive Design: Fully responsive UI, optimized for both desktop and mobile devices, ensuring seamless experience across platforms.

πŸš€ Live Demo

You can check out the live demo of the LinkedIn Clone project at: Live Demo

πŸ“Έ Screenshots

Responsive on large screens - Home Page

image

Responsive on mobile and tablet screens

image

Loading screen

image

Sign in page

image

image

LogIn Page

image

image

Welcoming Page

image


πŸ›  Tech Stack

Front-End:

  • React.js with TypeScript – for building a scalable, maintainable, and type-safe user interface.
  • Vite – a fast build tool for development, ensuring quick reloads and a smooth developer experience.
  • Tailwind CSS – for utility-first CSS styling that enhances the user experience.
  • React Router – for client-side routing and smooth page transitions.

Back-End:

  • Firebase – for authentication, real-time database, and file storage (e.g., user data, posts, job listings).

Deployment:

  • Vercel/Netlify – for front-end hosting, providing fast and reliable content delivery.
  • Firebase Hosting – for hosting both front-end and back-end in a serverless environment.

Tools & Libraries:

  • Prettier – for code formatting to maintain consistent code style across the project.
  • ESLint – for ensuring consistent code quality and identifying potential issues during development.

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

This project is developed by:


Getting Started

Follow these instructions to set up the project locally.

Prerequisites

  • Node.js (v18 or higher) - You can download it from here.

Installation

1. Clone the Repository

To get started, clone the repository to your local machine using the following command:

git clone https://github.com/saddamarbaa/LinkedIn-clone-app-react-typescript.git

2. Go to the Project Directory

cd LinkedIn-clone-app-react-typescript

3. Install Dependencies and Set Up Environment Variables

Once you’ve cloned the repository, navigate to the project folder and install the required dependencies:

npm install

Copy .env.example to .env and update the necessary values.

4. Set up Firebase

For user authentication, you'll need to set up Firebase:

  1. Go to the Firebase Console.
  2. Create a new project or select an existing project.
  3. Enable Firebase Authentication (Email/Password and Google).
  4. Copy the Firebase config and add it to the .env file in your project.

5. Run the Project

Once the setup is complete, you can run the project locally using:

npm run dev

This will start the development server, and you can view the app in your browser at http://localhost:3000.

🌍 Environment Variables

To configure the project, you'll need to add the necessary environment variables. Follow these steps:

  1. Copy .env.example to .env.
  2. Update the environment variables with your Firebase configuration:
VITE_REACT_APP_FIREBASE_API_KEY=""
VITE_REACT_APP_AUTH_DOMAIN=""
VITE_REACT_APP_PROJECT_ID=""
VITE_REACT_APP_STORAGE_BUCKET=""
VITE_REACT_APP_MESSAGING_SENDER_ID=""
VITE_REACT_APP_APP_ID=""

πŸ“¦ Deployment

Deploying to Production

  1. Prepare Environment Variables:

    Ensure that the necessary environment variables are set up in your production environment:

    • VITE_REACT_APP_FIREBASE_API_KEY
    • VITE_REACT_APP_AUTH_DOMAIN
    • VITE_REACT_APP_PROJECT_ID
    • VITE_REACT_APP_STORAGE_BUCKET
    • VITE_REACT_APP_MESSAGING_SENDER_ID
    • VITE_REACT_APP_APP_ID
  2. Push Your Code to a Git Repository:

    Push your code to a remote repository like GitHub, GitLab, or Bitbucket.

  3. Set Up a Hosting Service:

    You can deploy the app on platforms like:

    • Vercel:

      npm i -g vercel
      vercel login
      npm run build
      vercel --prod
    • Netlify:

      npm i -g netlify-cli
      netlify login
      npm run build
      netlify deploy --prod

    Set the necessary environment variables in the respective dashboard (Vercel or Netlify).

  4. Set Up Firebase:

    Ensure that Firebase Authentication, Firestore, and Storage are configured as needed in your Firebase Console. Ensure that the Firebase environment variables are correctly set in your deployment platform.

  5. Additional Considerations:

    • Security: Ensure that sensitive information (like API keys) is securely stored in environment variables.
    • Build Process: Always run npm run build before deploying to ensure an optimized production build.

Once deployed, your application will be live, and you can access it through the provided URL from Vercel or Netlify.

🀝 Contributing

Contributions are welcome! If you'd like to contribute, please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeatureName).
  3. Commit your changes (git commit -m 'Add some feature').
  4. Push to the branch (git push origin feature/YourFeatureName).
  5. Open a pull request.

License

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


πŸ”„ Status

  • Current Status: This project is in active development.

πŸ’‘ Inspiration

This project was inspired by LinkedIn's platform, with an additional focus on building a modern, feature-rich web application using React. The goal is to replicate core LinkedIn features while adding enhancements like dark mode and Firebase authentication.

πŸ› οΈ Support

If you encounter any issues while setting up or using the app, feel free to raise an issue on the GitHub repository, and we will do our best to assist you. Alternatively, you can contact us via email or through social media.

πŸ“ Feedback

We value your feedback and would love to hear from you! If you have any suggestions, improvements, or bugs to report, please feel free to:

Your feedback helps us improve the project and provide a better experience for everyone.

🌟 Star History

Star History Chart


🌐 Social Links

LinkedIn Twitter


πŸ“ Related Projects


πŸ› οΈ APIs & Backend Projects

Open Source Blog REST API

GitHub Repo
A RESTful API for managing blog posts and user authentication, built with modern technologies.

  • Features:
    βœ… JWT-based authentication with role-based access control.
    βœ… Advanced filtering, pagination, and search functionalities.
    βœ… Scalable and maintainable architecture.

  • Tech Stack:
    πŸ› οΈ Node.js | Express | MongoDB | TypeScript


Dev Match App

GitHub Repo
A developer matchmaking app designed to connect developers based on skills and interests.

  • Features:
    βœ… Developer matching algorithm.
    βœ… Real-time chat for seamless communication.
    βœ… Dynamic and responsive user interface.

  • Tech Stack:
    πŸ› οΈ React | Vite | TypeScript | REST API


πŸŽ₯ Video Streaming Platforms

YouTube Clone App

GitHub Repo
A fully functional YouTube clone with video uploads, comments, and playlists.

  • Features:
    βœ… Video streaming with like/comment functionality.
    βœ… Playlist creation and management.
    βœ… User profile customization.

  • Tech Stack:
    πŸ› οΈ React | Vite | TypeScript


Netflix Clone App

GitHub Repo
A Netflix-inspired platform for movie streaming and user authentication.

  • Features:
    βœ… Movie streaming with Firebase authentication.
    βœ… Real-time search powered by ChatGPT.
    βœ… Sleek and responsive design.

  • Tech Stack:
    πŸ› οΈ React | TypeScript | Firebase


🐦 Social Media Platforms

Twitter Clone App

GitHub Repo
A real-time Twitter clone with tweet posting and updates.

  • Features:
    βœ… Tweet creation and commenting.
    βœ… Real-time notifications and follow system.
    βœ… Secure user authentication.

  • Tech Stack:
    πŸ› οΈ Next.js | TypeScript | Firebase


Instagram Clone App

GitHub Repo
An Instagram-inspired app with image uploads and interactive features.

  • Features:
    βœ… Photo uploads with comments and likes.
    βœ… User authentication via Firebase.
    βœ… Responsive and visually appealing design.

  • Tech Stack:
    πŸ› οΈ Next.js | TypeScript | Firebase


πŸ’¬ Messaging Platforms

Messenger Clone App

GitHub Repo
A real-time messaging app inspired by Facebook Messenger.

  • Features:
    βœ… Real-time chat using Firebase Firestore.
    βœ… Group chat and media sharing.
    βœ… User-friendly interface.

  • Tech Stack:
    πŸ› οΈ Next.js | Firebase | Material-UI


πŸ›’ E-Commerce Platforms

Amazon Clone App

GitHub Repo
An Amazon-inspired e-commerce platform with product listings and cart management.

  • Features:
    βœ… Product browsing and add-to-cart functionality.
    βœ… User authentication and order history.
    βœ… Secure payment integration.

  • Tech Stack:
    πŸ› οΈ React | Redux | Firebase


πŸ” Search & Discovery Platforms

Google Clone App

GitHub Repo
A Google homepage clone with real-time search functionality.

  • Features:
    βœ… Real-time search bar with suggestions.
    βœ… Mobile-friendly, responsive design.
    βœ… Minimalistic and fast UI.

  • Tech Stack:
    πŸ› οΈ Next.js | TypeScript | Tailwind CSS


πŸ“§ Email & Productivity Platforms

Gmail Clone App

GitHub Repo
A Gmail-inspired app for email management and composition.

  • Features:
    βœ… Email sending with secure authentication.
    βœ… Responsive inbox interface.
    βœ… Easy-to-use email composition tools.

  • Tech Stack:
    πŸ› οΈ Next.js | Firebase | Tailwind CSS


πŸš— Other Platforms

Tesla Clone App

GitHub Repo
A Tesla-inspired app for browsing cars and managing user accounts.

  • Features:
    βœ… Interactive car browsing with detailed specs.
    βœ… Secure user authentication and account management.
    βœ… Modern and sleek design.

  • Tech Stack:
    πŸ› οΈ React | TypeScript | Styled Components

About

==> Building LinkedIn Clone App with React Js + Vite + TypeScript + Tailwind CSS + Firebase Realtime Database + Vercel Hosting + User Authentication (a mobile-friendly)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages