Writing Instagram in Python

Manan
2 min readAug 28, 2020
Designing Instagram

This post was prompted by a Quora question that I was requested to answer.

While a little uninspired, it was interesting and so instead of being dismissive, I thought to answer it the best I could. And so I did. It asks for an “Instagram backend clone” and that, in its entirety, is a little difficult. However, emphasis on the word “entirety” should be placed. Instagram, while on the face of it seems like a simple image sharing app, had over forty billion images back in 2015. That is five years ago and it has only skyrocketed in popularity and growth. It had 250 million active users in 2017. Those are massive numbers for any site and we sure as hell aren’t going to build something that supports that kind of tolerance in a day.

So, what exactly are we going to do? We’re going to attempt to recreate a very simple version of Instagram in a few hours.

What does that include? Well, for starters, authentication — there should be user profiles with images, private options, about sections, unique usernames, and names.

Then we should have the capabilities to upload, update, and delete posts that can have multiple photos and a caption.

And finally, perhaps the most interesting task of follower-following relationships where users can follow users and like their posts.

And if we have time, add in a comments feature.

So six things —

  1. User authentication and sign up
  2. Post uploading, updating, and deleting
  3. Following and follower relationship defining
  4. Generating feeds based on follow relationships
  5. Finishing up and adding a post like feature
  6. Optionally, ability to add comments to posts

Sounds pretty good, let’s go. Read the second post here.

--

--

Manan

Computer Science and Mathematics enthusiast. I dabble in Philosophy.