Twitter Clone

A Twitter clone created with Golang, PostgreSQL, Redis, VueJS and Vite with support for dark mode and light mode using TailwindCSS

Status: Some features are yet to be implemented


Preview

preview

For more check out some screenshots here

Features ✨

NOTE: Not all features from twitter are implemented because of how big Twitter is, Only the main features are implemented atm

  • Modular Architecture
  • Database migration tool using migrate
  • Golang Hot-reloading using air
  • Supports dark-mode and light-mode with TailwindCSS
  • Database seeding script using NodeJS
  • Authentication using JWT Refresh token flow and Redis for token blacklisting
  • Strongly typed Vuex store
  • List Tweets feed
  • Create Tweets with images
  • Retweets
  • Reply to Tweets or reply to another reply!
  • Like Tweets
  • Follow users
  • Images & Media uploads stored in AWS S3 Buckets
  • Up to 4 images in a single tweet with the same layout as Twitter
  • Crop profile image
  • Edit Profile Details
  • Edit Profile Image
  • See who a user is following and see their followers

Tech 🛠

How to run locally

Check here on how to run locally

Improvements

  • Hashtags and mentions
  • Notifications
  • Bookmarks
  • Lists
  • Trending section

Disclaimer

twitter-clone is created for educational purposes only.

I do not work for Twitter nor Twitter the company itself has any associations / involvements in this project.

GitHub

View Github