Twitter Spring Reactjs

screenshot of Twitter Spring Reactjs
react
material-ui

:bird: Twitter Clone with Microservice Architecture using Java 17, Spring Boot, Spring Cloud, PostgreSQL, S3 bucket, JWT, TypeScript, React.js, Redux-Saga, Material-UI

Overview

The Twitter Clone is a web application developed with a microservice approach using the Spring Framework and React.js. It is constantly updated with new features and offers a range of functionalities similar to the original Twitter platform. The project utilizes various technologies for both the backend and frontend, ensuring a robust and efficient user experience.

Features

  • Authentication with JWT and Email validation: Users can securely authenticate using JSON Web Tokens and validate their email addresses.
  • Interactive Tweeting: Users can add tweets, like, retweet, reply, quote tweets, and schedule tweets.
  • Bookmarking and Direct Messaging: Users have the ability to bookmark tweets and send tweets via direct message.
  • Lists and Following: Users can create lists, edit lists, add other users to lists, follow lists, and pin lists.
  • Notifications: Users receive notifications when someone subscribes, retweets, or likes their tweets.
  • Media Sharing: Users can add images to their tweets, create polls and vote, and post tweets with link previews or YouTube video links.
  • Online Chats: WebSocket technology allows for real-time online chats.
  • User Profiles and Account Settings: Users have private profiles, can edit their profiles, and access account settings.
  • Block and Mute: Users can block and mute other users.
  • Customization: Users can customize the site color scheme and background color.
  • Search Functionality: Users can search tweets by hashtags and search other users and their tweets.

Summary

The Twitter Clone is a comprehensive web application that closely mimics the functionality of the original Twitter platform. It offers various features including user authentication, interactive tweeting, bookmarking, direct messaging, lists and following, notifications, media sharing, online chats, user profiles, account settings, customization options, and search functionality. The installation process involves setting up the required tools and dependencies, configuring various services and APIs, and running the application locally.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

material-ui
Material UI

material-ui adds classes to Tailwind CSS for all common UI components. Classes like btn, card, etc. This allows us to focus on important things instead of making basic elements for every project.

fullstack
Fullstack

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.