Here's a censored version of the content converted to past tense:
This project involved building a social media site with support for images. The project was done in teams and built upon components developed over the semester.
The project had several elements, including:
- Backend services in Node.js and/or Java, hosted on cloud infrastructure
- Database (accounts, social network, etc.) hosted in cloud databases
- Image search based on embeddings similarity
- Large objects stored in cloud storage
- Natural language search using a large language model
- Social news streaming via message broker
- Ranking of posts and individuals via distributed computing framework
- Proper handling of security and sessions
- Frontend in React and Javascript
- Code in version control
New users could sign up for an account by entering basic information. Passwords were salted and encrypted following best practices. Users could upload a profile photo and include hashtags of interests.
Users could log in with their user ID and password.
When logged in, users saw an Instagram-style feed with status updates, new friendships, and profile updates from friends. Users could make posts containing optional images and text, including hashtags.
The feed included posts from friends, posts referencing the user's selected hashtags of interests, posts from users with high SocialRank, and posts from a provided social media stream.
Additional features included:
- Profile page
- Add/remove friends
- Chat mode
- Search functionality
Users could search for people and posts using retrieval-augmented generation over indexed content.
The design ensured security and scalability.
The system recomputed a list of recommendations for "who to follow" on a daily basis.
At the end of the project, teams included a short final report discussing the system overview, technical description, design decisions, changes made, lessons learned, and screenshots of the system in action.
The project aimed to provide a comprehensive learning experience in building a scalable, feature-rich social media platform using modern web technologies and cloud services.