Skip to content

Latest commit

 

History

History
76 lines (48 loc) · 2.79 KB

README.md

File metadata and controls

76 lines (48 loc) · 2.79 KB

Binderz - Web App

Midterm Group Project

Team Members: @arms1997 @ngoalvin @emilylim04

Binderz is a resouce wall similar to Pinterest where users (learners) are able to save learning resources like tutorials, blogs and videos in a central place that is publicly available to any user.

Features

  • Users can register, login/logout
  • Users can create a new resource (add an external link, photo, title, description) and save to a specific resource category
  • Users can search for already-saved resources created by any user and can search for a specific category
  • Users can comment on any resource
  • Users can like any resource and save to their personal liked page
  • Users can rate any resource based on a 5 star system
  • Users can view all of their own liked resources on their My Resources page
  • Users can update their profile name

Getting Started

  1. Create the .env by using .env.example as a reference: cp .env.example .env
  2. Update the .env file with your correct local information
  3. Install dependencies: npm i
  4. Fix to binaries for sass: npm rebuild node-sass
  5. Reset database: npm run db:reset
  • Check the db folder to see what gets created and seeded in the SDB
  1. Run the server: npm run local
  • Note: nodemon is used, so you should not have to restart your server
  1. Visit http://localhost:8080/

Warnings & Tips

  • Do not edit the layout.css file directly, it is auto-generated by layout.scss
  • Split routes into their own resource-based file names, as demonstrated with users.js and widgets.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.

Dependencies

  • Node 10.x or above
  • NPM 5.x or above
  • PG 6.x

Screenshots

Home Page

"Main Page"

Create A New Resource

"Create a New Resource"

Resource

"Resource"

Forms (Login, Register)

"Login Form" "Register Form"

My Resources Page

"My Resources Page"

Error Message

"Error Message"