How my simple Github project went viral





Last month I created a simple project that spread across various tech communities and social media. In Github, he received from 0 to 4 thousand stars and more than 200 forks in 7 days. Github has been promoting it in the Trending repositories of day section for about five days .



Clone Wars



70+ open-source clones or alternatives to popular sites like Airbnb, Amazon, Instagram, Netflix, Tiktok, etc. The list contains source code, demo links, technology stack, and GitHub stars.



Link to project



Link to Github




Trending on Github - March 13, 2021



What motivated me to create this project



I'm a techie and I often sit on popular Reddit communities like r / webdev, r / reactjs and the like, following what other developers are creating and learning about new JS frameworks. I have noticed that many developers create clones of popular sites like Instagram, Trello, Spotify, etc. to learn coding, and then share with others to get feedback on the quality of the code and recommendations.





Developers share their projects in r / reactjs



These clones are scattered across many communities. So I thought, why not create a general list of all these clones that people we could bookmark and come back to in the future. To be honest, I wasn't sure at the time if such a list would be useful to others. I had the opportunity to find out by creating it myself!



How I made the list



1. Scraping Reddit



I wanted to find all posts containing the keyword "clone". At first, I used the standard Reddit search: reddit.com/r/reactjs/search/?q=clone&source=recent&restrict_sr=1&sort=new



(this means searching for all posts in the subreddit reactjs



with the keyword "clone" and sorting by newest
). This request returned all posts, including low-quality posts with a rating of 0, questions about how to create a clone of a service, etc. It would be difficult to find good clone projects from this dump. So I used the redditsearch.io site , which provides advanced filtering capabilities of Reddit, such as returning posts with at least 10 "likes" published within a certain period of time, etc.



Next, I created a list of all these clones, their Github repos, demo links, technology stack. Everything was done by hand.



I also googled “open-source alternatives” and found several fully functional clones of Slack, Airtable, Bit.ly, Evernote, Google analytics, etc. I also added them to the list.



So, there are two types of projects on the list. The former look very similar (from a UI point of view), but not fully functional, the latter are fully functional, but with a different UI (to avoid copyright issues, etc.).


Come up with a name for the project



I named my project after the 2008 television animated series Star Wars: The Clone Wars and kept a similar color scheme.





The Animated Series Star Wars: The Clone Wars





Clone Wars Github Project



2. Nice display of the table



I've worked with markdown before, but this is my first time creating markdown tables and it turns out that the table on the project's Github page looks terrible. Especially if it is a long table with many columns. I wanted to make it prettier (with the title constantly hanging at the top), that is, the project had to be deployed somewhere else. But it still had to be on Github so that other people could conveniently work with it. I decided to host it on my personal website https://gourav.io .



My site was built with NextJS, and I already used markdown (mdx) to write posts, so it was enough to just copy and paste the markdown file from my Github project to a new page https://gourav.io/clone-wars... In addition, I used Tailwind CSS with the "typography" plugin to improve the readability of tables and other text.



I was thinking about taking automation to the next level, for example, when making a change to a Github project or merging pull requests (PR), it would be possible to update the table on my site https://gourav.io/clone-wars . But I decided not to overcomplicate the system because the changes were not that frequent.



Making the project go viral



I posted a post on 2-3 subreddits and it took off.





reddit.com/r/reactjs





reddit.com/r/webdev



Effects



After the project gained some popularity, many developers began to use PR to add clones to the list of their projects. When I started the project, there were about 75 clones, but now there are more than 120, and I often get new PRs.



I learned from a friend that the project got into the React Newsletter . A very unexpected and pleasant moment.



People started tweeting about Clone Wars . @nickbulljs provided an idea for developers looking for work.





Recruiters are tired of weather apps and expense calculators.



Here's a smarter development idea:



  1. Choose one site from over 70 open-source clones of popular sites like Netflix, Instagram and others from the link below.
  2. Explore the codebase.
  3. Create your own clone.


gourav.io/clone-wars




After this tweet, I got over 150 new followers.


And another person donated $ 5 to me using the BuyMeACoffee link , which I added to my project. Thank you stranger.





In 30 days after the launch of the project, my personal site was visited by more than 40 thousand people, and the project received more than 80 thousand views.



Here are some of the statistics on users (the first 30 days after launch, i.e. after posting to Reddit):





Referral sites





Users by country





Users by OS





Users by Browser



At the moment, the project has GitHub repo starsand GitHub forks.






Advertising



VDS for projects and tasks of any scale - this is about our epic servers ! The latest technology and equipment, quality service. Hurry up to order!






All Articles