Buy & Sell is a convenient destination for people to discover, buy and sell clothing. From the homepage users can select to view listings, mens, womens and all. There is also a nice scroll at the bottom of the screen showing the most recent featured products.
Users are able to filter their results by mens, womens, all and also filter by price, listing items from High to Low or Low to High.
Users have the ability to add items to their favorites allowing them to come back at a later date when they are ready to purchase. The also have the ability to remove items from their favorites.
If interested in an item users can message the seller which will be sent via sendgrid mail. The negotiations can continue via the buyer and sellers personal email.
Once an item has been sold the seller can go to their profiles page and mark an item as sold. A seller is able to:
- View active listings (includes marking an item as sold and deleting an active listing)
- View all listings (includes both active and sold items)
- Create a new listing
- Hervinder Bhandal
- Dylan McGrann
- Sumin Kim
- Create the
.env
by using.env.example
as a reference:cp .env.example .env
- Update the .env file with your correct local information
- username:
labber
- password:
labber
- database:
midterm
- Install dependencies:
npm i
- Fix to binaries for sass:
npm rebuild node-sass
- Reset database:
npm run db:reset
- Check the db folder to see what gets created and seeded in the SDB
- Run the server:
npm run local
- Note: nodemon is used, so you should not have to restart your server
- Visit
http://localhost:8080/
- Do not edit the
layout.css
file directly, it is auto-generated bylayout.scss
- Split routes into their own resource-based file names, as demonstrated with
users.js
andwidgets.js
- Split database schema (table definitions) and seeds (inserts) into separate files, one per table. See
db
folder for pre-populated examples. - Use the
npm run db:reset
command each time there is a change to the database schema or seeds.- It runs through each of the files, in order, and executes them against the database.
- Note: you will lose all newly created (test) data each time this is run, since the schema files will tend to
DROP
the tables and recreate them.
- Node 10.x or above
- NPM 5.x or above
- PG 6.x
- @sendgrid/mail: 7.4.4
- body-parser: 1.19.0
- chalk: 2.4.2
- dotenv: 2.0.0
- ejs": 2.6.2
- express: 4.17.1
- morgan: 1.9.1
- node-sass-middleware: 0.11.0