/twitter-clone

A clone of the social-media platform, Twitter.

Primary LanguageJavaScript

twitter-clone

Description

Have you ever dreamed of having your own personal social media platform, like Twitter, without all the nuances (i.e. the people on there) that come with it? Here you go!

Currently live at: haiderzaidi.ca/twitter-react

I created this project to learn more about React and Firebase Auth/firestore (as such, I may have over-commented on somethings for personal notes) - also because I thought it was cool to say I made a Twitter.

Stack:

  • Front-end: React.js, Bootstrap, HTML/CSS
  • Back-end: Firebase (OAuth2 & FireStore), Node.js

Demo

Features

  • Firebase Google OAuth2 Authentication
  • Create and view tweets (rendered in real-time from Firestore documents using React hooks).
  • Like and retweet tweets: prevents tweets from being liked/retweeted more than once by the same user.
  • Spam filter on creating tweets: ensures a 15-second delay between tweets.

Installation

You can install the app by cloning the repository, and starting a server with npm. You will need to create your own database solution, I used firebase.

git clone https://github.com/HaiderZaidiDev/twitter-clone
npm install react-bootstrap
npm install react-firebase-hooks/auth
npm install firebase
npm start

Roadmap

I'll be working on this for the next few weeks, most of the front-end design for the feed is done (HTML/CSS), what remains, is implementing it via React, and linking it to a backend.

  • Front-end: React.js, Bootstrap, HTML/CSS
  • Back-end: Firebase (OAuth2 & Firestore), Node.js
  • Create a sign-in page (currently, it's just a button).
  • Create user profile pages, and a following system.