Giter Site home page Giter Site logo

pinstagram's Introduction

Pinstagram

pinstagram

Pinstagram is a full stack Instagram clone. It's the result of exercising with Node, MongoDB and its frameworks. The goal was to build a functional clone of some Internet-based photo-sharing application.

I finally decided to copy the web version of Instagram and add some extra features to it, such as the ability to upload images in the browser or to be able to see all the images that I liked in one place, such as the Pinterest boards.

This is my first approach to the Back-end kingdom.

The stack

  • Server side: Node with Express (ES2017 async/await)
  • Database: MongoDB and Mongoose
  • Templates: Pug (formerly Jade)
  • Authentication: Passport.js
  • Client side: ES6 vanilla Javascript and Sass

Live App

View it on here

You can create your own account or login in with one of the following accounts:

Populated profiles

username password
yellow 123
red 123
purple 123
blue 123

Empty profiles

username password
guest1 123
guest2 123

Features

As an unauthenticated user:

  • I can login with Facebook or username and password.
  • I can create a new account.
  • I can reset my password via email if I already have an account.
  • I can browse other users' feed.

As authenticated user:

  • I can edit my profile info, change my avatar and password.
  • I can follow other users.
  • I have a Home page showing all of my friends' recent images.
  • I will receive a notification when a user starts to follow me, likes or comments one of my photos.
  • I can share an image with a caption.
  • I can comment and like/unlike an image. My liked images will be stored in my Likes page.
  • I can delete any of my images or comments.
  • I can discover other users via suggestions.

While the priority of this exercise isn't mobile apps, it works quite well on Android with Chrome (not tested on any other phone)

pinstagram


TODO

  • Hashtags
  • Linking users (@username)
  • Socket.io

pinstagram's People

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.