Git Product home page Git Product logo

instagram-clone's Introduction

Instagram Clone

Contributors Forks Stars License PRs-Welcome

Created a clone of Instagram using MERN stack.

Instagram Clone Official Website »
Report Bug · Request Extension

Table of Contents :

(Bottom)

Overview

Instagram Clone | MERN Stack

Features:

Uers can update their profile and sort posts based on their followings User authetication with enability to reset password via email notification Lets users post images with title Lets users like & dislike posts Lets users comment on others post Lets users view other users profile Lets user follow & unfollow other users Search feature to search people on this webiste

About

I started developing a social media app in my spare time for about 2 months or so and ended up with this cool Instagram-Clone! Basically it allows you to login and upload posts (with images & coordinates), search posts (by names), like and comment on posts.

I learnt a lot about react & backend stuff while doing this including:

  • best ways to upgrade a projects packages (which proves to be hard some times)
  • write clean client-side & server-side modules
  • changing the boilerplate
  • optimize bits of code
  • much more...

(back to top)

What I learnt about react

  • It's really easy to prototype web-apps quickly, but when it comes to refining them and adding smaller details, the development time starts to slow down.
  • The styling is quite hard, at first, to get right.
  • It's got an amazing community that spends a lot of time improving the codebase everyday!
  • Changing react versions can prove to be a hard task. Build error, npm package dependcies, and more...

Tech-Stack used :

HTML 5 CSS3 Javascript Nodejs Reactjs Mangodb


(back to top)

Folder Structure

client/
  public
  src
config
middleware
models
routes
   app.js
   package-lock.json
   package.json
...

(back to top)

Prerequisites

Usage (run fullstack app on your machine)

notice, you need client and server runs concurrently in different terminal session, in order to make them talk to each other

Client-side usage(PORT: 3000)

$ cd client    // go to client folder
$ npm i       // npm install packages
$ npm start  // run the client side app

Server-side usage(PORT: 5000)

(back to top)

Prepare your secret

run the script at the first level:

Start

$ npm i       // npm install packages
$ nodemon app // this will run the server side app

Deploy Server to Heroku

$ npm i -g heroku
$ heroku login
...
$ heroku create
$ npm run heroku:add <your-super-app>
// remember to run this command in the root level, not the server level, so if you follow the documentation along, you may need to do `cd ..`
$ pwd
/Users/<your-name>/mern
$ npm run deploy:heroku

(back to top)

Snapshots of this Project

User can sign in or sign up

User can sign in or sign up


User visit Feed page

User visit Feed page


(back to top)

User can go to his/her profile page

User can go to his/her profile page


User can visit other users profile and follow/unfollow

User can visit other users profile and follow/unfollow


(back to top)

Open Source programs this repo has been part of



(back to top)

Contribution Guidelines


Never made an open source contribution before? Here's a quick rundown!
  • Fork this repository.

  • Clone your forked copy of the project.

git clone https://github.com/<your_user_name>/Instagram-Clone.git
  • Navigate to the project directory 📁 .
cd clone-it
  • Add a reference(remote) to the original repository.
git remote add upstream https://github.com/riyajha2305/Instagram-Clone.git 

(back to top)

  • Check the remotes for this repository.
git remote -v
  • Always take a pull from the upstream repository to your master branch to keep it at par with the main project(updated repository).
git pull upstream main
  • Create a new branch.
git checkout -b <your_branch_name>
  • Perfom your desired changes to the code base.

  • Track your changes:heavy_check_mark: .

git add . 

(back to top)

  • Commit your changes .
git commit -m "Relevant message"
  • Push the committed changes in your feature branch to your remote repo.
git push -u origin <your_branch_name>
  • To create a pull request, click on compare and pull requests.

  • Add appropriate title and description to your pull request explaining your changes and efforts done.

  • Click on Create Pull Request.

  • Congrats ❗ You have made a PR to the harshita2216/hello-jobs 💥 . Wait for your submission to be accepted and your PR to be merged.

  • Wait for the pull request to be reviewed by a maintainer, Make changes to the pull request if the reviewing maintainer recommends them.

  • Celebrate 🥳 your success after your pull request is merged!



(back to top)

Contributors


Thanks to all the people who contribute 💜

Contributors



(back to top)

Feedback

If you have any feedback or suggestions please reach out to Project - Maintainer.

Or you can create a issue and mention there , which new features can make this Project more good.



(back to top)

Show some ❤️ by starring this awesome Repository!


instagram-clone's People

Contributors

03amir avatar 57alok avatar ayush-sleeping avatar binayshaw7777 avatar devmindtk avatar dhananjay-jsr avatar dhruvtongia avatar harshit-070 avatar kmj-007 avatar nimishavashistha avatar riyajha2305 avatar rockingrohit9639 avatar saurabhraj123 avatar shresa avatar shruti025 avatar starboy-sharma avatar stubborn-1508 avatar tess-vanta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

instagram-clone's Issues

Redesign Homepage

Hey there,
As far as I know, it is an Instagram clone but the app does not look like Instagram. I would like to redesign the Homepage using CSS to look more like Instagram.
If you allow me @riyajha2305 I would be happy to do so.

Documentation : Readme Updatation

Add - labels ,
Add - Table of content ,
Add - Open Source programs this repo has been part of ,
Add - Project Mentor ,
Add - ( back to top ) and ( bottom ) links ,
Add - Contributors section ,
Add - Feedback section ,
Also - All things categorize it, In a systematic way ......


Hey @riyajha2305 , I want to work on this issue under JWOC'22
And want to make the Readme file of this Repo. more responsive and cool .

Likes counts are incorrect

If you click the like button multiple time so the like count increase more than once. Same with comment if you are posting any comment and press enter multiple times then your comment visible more than once.

Navbar fixes

I would like to make the navbar more aligned and instagram like

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.