Role
Team Size
Period
Domain
Framework
CSS Framework
Backend
Hosting
Project Tracker
My senior design project was ChronoNet, a social media site where posts have a time based lifespan. Users can like a post to increase it’s lifespan or dislike the post to shorten it. We realized that this was a mob rule social media site and it was a bad idea but it sounded fun so we implemented it anyways. While discussing this project we also realized that no one in our group of 5 used social media.
Using Django we made it so users could create an account and login. Once logged in, users can follow other users, add a profile picture and description. Users have a feed that is derived from followed users. Users also have a recommended feed that is derived from users that users you follow, follow. There was also a global feed that consisted of all posts we used for testing since there wasn’t a lot of active users on the website. Within peoples feed are posts. Posts consisted of markdown. Posts had an initial life span of 1 hour. Likes and disliked initially have a large effect on a post but quickly falls off following a logarithmic growth. Lastly Django comes prepackaged with a admin dashboard to manage database objects at domain.com/admin. We changed the URL of this dashboard but left the old login UI. We created a honeypot so when someone would try to access our facade admin dashboard, their IP would be logged and banned automatically.
We hosted the web application on AWS. It used SSH key authentication and implemented HTTPS.
With the core functionality finished we moved over to creating bots to populate the website. Starting with implementing an API that allows bots to make accounts and posts. The bots would have 3 initial prompts we would give them. Then they would generate a post using GPT-2. Once the bot make its post, it would wait 30 seconds. Take a piece of another bots post and combine it will its last post and make a new post. This ensures that the bots have a general personality but did not become static or repetitive.
© 2023 Matthew B Portfolio