Y is a simplified version of Twitter, designed to demonstrate the core features of social media platforms such as tweeting, following users, and liking tweets. Visit the website here.
- Frontend: React.
- Backend & DataBase: Node.js with Express for the server, MongoDB for the database, and Mongoose for object data modeling.
- Deployment: AWS (Amazon Web Services) for hosting the application.
- Containerization: Docker for creating multiple containers for different parts of the application, ensuring easy deployment and scalability.
- CI/CD: Travis CI for automating tests and deployment to AWS.
- User Authentication: Users can sign up, log in, and log out.
- Tweeting: Users can post tweets, view their own, and see those from followed users.
- Follow/Unfollow: Users have the ability to follow or unfollow others.
- Likes: Tweets can be liked or unliked by users.
- Tweet Comments: Users can comment on tweets.
- Continuous Integration/Deployment: Utilizing Travis CI for CI/CD, hosted on AWS.
- Unit Testing: Implementing comprehensive unit tests.
- Tweet Sharing: Enabling tweet sharing to user timelines.
- Dark Theme: Introducing a dark theme for the UI.
- Profile Avatars: Allowing users to upload and change their profile pictures.
- Mobile Optimization: Enhancing UI for mobile devices.
- Advanced Search: Developing a feature for filtering tweets and profiles by keywords, tags, and dates.
- User Recommendations: Creating a system to suggest relevant users and content based on activities and followings.