Code Monkey home page Code Monkey logo

clone-instagram's Introduction

Instaclone banner

Instaclone

An instagram clone created with MongoDB, Express, React, and Socket.io

Heroku deploy status

Have a look at the live demo

Showcase GIF

Tech


Installation - Development

Clone

  • Clone this repo to your local machine using https://github.com/Sandermoen/instaclone

Setup

Install npm dependencies using npm install

$ npm install && cd client && npm install

Set up a MongoDB database either locally or provision a free database with MongoDB Atlas

Create a free Cloudinary account

Create a GitHub OAuth app

Create a .env file in the root directory

Set up required environment variables

MONGO_URI= // mongodb://localhost:27017/instaclone
JWT_SECRET= // random string: j2390jf09kjsalkj4r93
CLOUDINARY_API_KEY= // Cloudinary API key
CLOUDINARY_API_SECRET= // Cloudinary API secret
CLOUDINARY_CLOUD_NAME= // Cloudinary cloud name
SMTP_HOST= // mail.example.com
SMTP_PORT= // 587
EMAIL_USERNAME= // [email protected]
EMAIL_PASSWORD= // Password
HOME_URL= // http://localhost:3000
GITHUB_CLIENT_ID= // Client id for GitHub OAuth app
GITHUB_CLIENT_SECRET= // Client secret for GitHub OAuth app

In the root directory run both the backend and the front end with the following command

$ npm run dev

The app should launch automatically, enjoy playing around ๐Ÿ˜„


Installation - Production with Docker

Clone

  • Clone this repo to your local machine using https://github.com/Sandermoen/instaclone

Setup

Create a free Cloudinary account

Create a GitHub OAuth app

Create a .env file in the root directory

Set up required environment variables

MONGO_URI= // mongodb://mongo:27017/instaclone
JWT_SECRET= // random string: j2390jf09kjsalkj4r93
CLOUDINARY_API_KEY= // Cloudinary API key
CLOUDINARY_API_SECRET= // Cloudinary API secret
CLOUDINARY_CLOUD_NAME= // Cloudinary cloud name
SMTP_HOST= // mail.example.com
SMTP_PORT= // 587
EMAIL_USERNAME= // [email protected]
EMAIL_PASSWORD= // Password
HOME_URL= // http://localhost:3000
GITHUB_CLIENT_ID= // Client id for GitHub OAuth app
GITHUB_CLIENT_SECRET= // Client secret for GitHub OAuth app

In the root directory start the docker container by using the docker-compose file using the following command

$ docker-compose up

Docker will configure the rest for you, the project should be available on port 9000 unless you specified otherwise ๐Ÿ˜„


Screenshots

Showcase GIF Showcase GIF Showcase GIF Showcase GIF

Support

Reach out to me at one of the following places!

clone-instagram's People

Contributors

sandermoen avatar dependabot[bot] avatar

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.