mrmoneyc / twitter-clone

Twitter Clone developed using Go + Vue 3 + Vite + TailwindCSS + PostgreSQL + Redis

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Logo

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

Resources & references used

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.

About

Twitter Clone developed using Go + Vue 3 + Vite + TailwindCSS + PostgreSQL + Redis


Languages

Language:Vue 43.4%Language:Go 37.5%Language:TypeScript 13.0%Language:PLpgSQL 3.0%Language:JavaScript 1.3%Language:Shell 0.7%Language:Makefile 0.5%Language:CSS 0.3%Language:Dockerfile 0.2%Language:HTML 0.1%