Skip to content

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

License

Notifications You must be signed in to change notification settings

secondmanveran/twitter-clone

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


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: Code rewrite in progress


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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 43.4%
  • Go 37.5%
  • TypeScript 13.0%
  • PLpgSQL 3.0%
  • JavaScript 1.3%
  • Shell 0.7%
  • Other 1.1%