NodeJS photo Sharing App + AWS (EC2, S3, DynamoDB)

This project was awarded to tundeganiy for $194 CAD.

Get free quotes for a project like this
Project Budget
$30 - $250 CAD
Total Bids
Project Description


The project objective: build a complete NodeJS photosharing application utilizing Amazon web services (AWS)

Requirements& Specifications:


1- The application shall be hosted on AWS EC2.

2- AWS DynamoDB and AWS S3 shall be used for data storage

** DynamoDB is to be used to store the file path for the photos, and AWS S3 is used to store the photos themselves.

3) NodeJS frame: ExpressJS

4) User authentication: PassportJS+ JSON Web Tokens (Facebook authentical is also fine)- Don't create both options-

5) An extremely simple client UI is to be built just to test the functionality of the server APIs.

** The frontend part of this project is not fundamental and used only for testing the server functionality. So, it's not required to built sophisticated UI.

How the application should works:


1) The app should allow new users to fill a simple signup form (basically first name, last name, e-mail and password are enough).

2) A user home page should have a feature to attach photos from your local computer and upload to the server. (Photos are not necessary be resized)

3) All photos should be shown in an album that exists on the user home page, or display the upload photos in any nice structure. Don't forget to add an option delete and download a photo.

4) Photos can also be shared on Facebook OR twitter account of the user

5) A user can 'follow' or 'add ' any other user that have a registered account in the system. You can do this using of the following option:

** Directly add or follow another user by knowing their e-mail ONLY (E-mail must be known to add another user). This is very simple search in the DB.

6) A user can view or/download the photos of any of their friends.

7) Photo access are only restricted to the main user and his followers (i.e. friends)

*** You must clearly document your code. This doesn't mean to prepare a separate document. Write meaningful comments on the top of your code and function explaining what they are doing. (If you're a professional developer, you should be doing that automatically).

*** The main purpose of this project is to test Amazon web service functionality, and not to build an application that will be used on a production level. So, don't spend too much too on build a cool UI.

*** Solid and professional coding skills are more valued than building a complicated application with a lot of features.

*** This project is needed by November 29th.

*** Mobile developer are also welcome to submit their ideas regarding replacing the client webUI with a mobile application.

*** Photos should also be allowed to be shared on some social media platform like Facebook or twitter.

*** Commenting your implemented code is very important.

Awarded to:

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online