ayjzhu / TheSilkTrade

A fashion-sharing platform where users can rent clothing from others that share the same fashion style.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CS178A-B-Template

Table of Contents

Overview

The Silk Trade is fashion-sharing platform where users can rent clothing from others that share the same fashion style. If the seller listed for sale, the user may also buy a piece of clothing directly without renting the product. In addtion, there is Auth0 intergrated to ensure only authenticated users have access to certain features in the site.

Usage

The project is being deployed on Heroku: https://silk-trade.herokuapp.com/

Technology Stack

Frontend:

  • React: React is a component-based modular javascript rendering framework that will allow our site to be lively and responsive to the user.
  • Bootstrap: Bootstrap is a CSS framework directed at responsive front-end web development.

Backend:

  • MongoDB: MongoDB is a No-SQL document-based storage system. Mongo is a great choice for our need to store unstructured data like text and images for our site.
  • MongoDB/Express: Node offers us an easy way to create a simple backend to deliver our site. Combined with the Express framework for Node, we can easily handle routing, DB connections, API requests, and more.
  • Auth0: Auth0 provides a way to integrate secure user authentication without manually developing and dealing with the intricacies of secure password management.

Specifications

  • User Profiles: Each user will need a profile to be able to make any listings. Users will have the ability to create profiles created through Auth0. Users will be able to upload photos and descriptions of their clothing for sharing.
  • Users can upload photos of their clothes to the “public closet” for sharing.
  • All user information will be stored in a MongoDB database. The database will use clusters to store information. Each user will have a cluster that keeps track of what clothes they are renting and are renting out.
  • Other users will have the ability to ask questions about any listing by leaving comments directly on the listing.
  • Each listing will have images of the product, a small description, the price to rent the product, a rating and review of the product, and a price to purchase the product (if applicable).

How To Run

Prerequisites

Before runing the app, be sure to duplicate the .env-example file in the backend directory, rename the duplicate to .env, and fill in the values appropriately. This will configure the MongoDB and Auth0 environment. After that is setup, run the command npm install (making sure the terminal working directory is in the backend directory).

Repeat the same process above but for the thesilktrade directory.

Development Mode

Have two terminal sessions running:

  • In one, go to the backend directory (cd backend) and execute node index.js.
  • In the other session, go to the thesilktrade directory (cd thesilktrade) and execute npm start. You will be able to access the application on localhost:3000.

Production Mode

With one terminal session, go to the thesilktrade directory (cd thesilktrade) and execute npm build. Then go to the backend directory (cd ../backend) and execute node index.js. You will be able to access the application on whichever port is specified in the ./backend/.env file.

Known Issues

  • The active listing page is not fully functional.
  • Image for invididual item is yet to implement.

Diagrams

Landing page

image

Login Page

image

Home page

image

Top listing page

image

Cart page

image

To list item page

image

Dependencies

Install Node Package Manager (npm). Helpful Documentation

Contributors

  • Sanchit Goel
  • Shubham Batra

About

A fashion-sharing platform where users can rent clothing from others that share the same fashion style.

License:MIT License


Languages

Language:JavaScript 86.1%Language:HTML 10.0%Language:CSS 3.9%