Giter VIP home page Giter VIP logo

hamsternest_webapp's Introduction

HamsterNest_WebApp

This is a web-based application that helps people who want to borrow something and that helps people who want to lend out stuff to others. Hamster is good at storing things and its nest is a mysterable space with unknown storage capacity!!

Team:

  • Yuxi Cai
  • Jinyi Chen
  • Liyu Chen
  • To Khoi
  • Kailun Li
  • Kaishan Zhang

About this project:

  • Heroku deployment: https://hamster-nest.herokuapp.com

  • Ruby 2.5.1

  • Rails 5.2.1

  • Gems

    • Devise
    • Ransack
    • Bootstrap
    • Gmaps4rails
    • Geocoder
  • Heroku Add-ons

    • Heroku Schedulers
    • SendGrid
  • Database

    • Postgres

hamsternest_webapp's People

Contributors

liyuchen1106 avatar jinyichenuoft avatar kailunl avatar caiyuxi avatar opmountain avatar leon-to avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

hamsternest_webapp's Issues

borrow_request

item_id: fk, int
borrower_id: fk, int
lender_id: fk, int
Approval: boolean #default false till borrower hit the button
Received: boolean #lender hit the button after receiving the item
return_date: date #expected_return_date

#to be decided
remove the column after the received=true or not

Redirect to HTTPS

All the request should be via HTTPS. Redirect HTTP request to HTTPS

Edit Borrow Request Page

name: borrow_reqs/edit.html.erb
Borrower can edit the request details
Auth: limited to the borrower who created the request

Rating system

  • This is a place holder for all the issues related to rating
    **** When working on this, create other smaller and workable issues

New Borrow Request page

name: borrow_req/new.html.erb
Borrower specifies the following information about the request:

  • intended borrow date
  • intended return date
  • message

User main page

The page acts as a user profile page...

name: users/show.html.erb
Auth:

  • Everyone: can view: email, "My item: available"
  • the user:
    • Manage user profile *
    • My item
      • Borrowed
      • Lent out
      • Saved
      • History
    • My friends < maybe not
      • Add
      • Remove
    • A search bar..?
    • notification

Revise current database

Things to revise

  • names of entries have to make sense
  • the naming format has to be consistent across tables
  • double check the variable types
  • dependencies between tables

Polish the view with css and js

Pages that require both contents and styling:

  • Main page (before login) -COMMERCIAL! MARKETING! -first draft done
  • User homepage - MARKETING! -first draft done

Pages that require styling:

  • Item search result page (card view looks much prettier!) -first draft done
  • User profile
    - show
    • edit/new -first draft done
  • Borrow request/Lend message
    -show -first draft done
    • new in item -first draft done
      - new/edit
  • item
    • show -first draft done
    • new/edit -first draft done

Update model for verification

This is a placeholder task. Detail description will come when it comes to implementation.
Verify data before storing to table

Show Borrow Request Page

name: borrow_reqs/show.html.erb
Show the borrow request detail
Auth:

  • Borrower: can view, can be redirected to the edit page
  • Lender: can approve/decline request

First try out Heroku

Try with a random rails project and make sure the project can run on Heroku in the same way as it runs locally.

User homepage

  • figure out how to redirect to a user homepage after sign-in

Edit item page

List all the editable properties of the item

name: items/edit.html.erb

Home Page Draft

HTML skeleton for the home page under welcome controller
name: welcome/show.html.erb

Verify the current models

Test the current models after implementation of basic views:
Make sure the data stored are of the correct data types.
Make sure the following actions succeed:

  • new
  • edit
  • destroy

Construct simple views for some general pages

Some pages to consider:
• “About” page that describes the service and provides the history of BoLend (to explain why BoLend is so great).
• a page containing the terms of service
• a page describing the privacy policy
• a page with a site map
• a “Contact Us” page
• a page with a FAQ
• twitter, facebook, Instagram (for marketing purposes).

*** May want to place these pages into one folder under views, possible named something like "views/pages/"

Regular pages templates

HTML skeleton for some regular page under welcome controller
name: xxx.html.erb

  • term of use
  • about us
  • private policy
  • FAQ

Borrow transaction email

Emails will be sent to the owner upon

  • a borrow request been submit
  • a item has been returned

sent to the borrower upon

  • Approval/Rejected on a borrow request

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.