Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including bookshare with all npm packages installed. Try it out:

var bookshare = require("bookshare")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

bookshare v1.0.0

an app to share books btw friends

Book Share

Book Share allows users to connect through their love of reading by sharing their favorite books with friends.

Table of Contents

  1. Requirements
  2. Development
    1. Installing Dependencies
  3. Features
  4. Routes
  5. Schema
  6. Testing
  7. Roadmap
  8. Team
  9. Contributing

Requirements

  • React
  • Node
  • mySql

Development

Installing Dependencies

From within the root directory:

npm install
bower install

If you are using Mac OSX or Linux run

shell setup.sh

From the root directory, this script is assuming you have node and bower installed

Features

  • Secure sign-in with salting and hashing
  • Google Books API Integration
  • Implemented SASS as a preprocessor
  • Generated Gruntfile to clean build files, transpile with webpack and generate style.css with SASS
  • Implemented MySQL Database
  • React front-end
  • Redux integration on the front-end
  • Implemented Node with Express library for the server

Routes

RouteMethodControllerHandler
/api/friendRequestsPOSTUser ControlleraddFriend
/api/friendsGETUser ControllerviewAllFriends
/api/user/:idGETUser ControllergetUser
/api/findFriends/:queryGETUser ControllerfindFriends
/api/friendRequestsGETUser ControllergetFriendRequests
/api/acceptFriendRequestPOSTUser ControlleracceptFriendRequest
/api/deleteFriendRequestPOSTUser ControllerdeleteFriendRequest
/api/friends/:id/booksGETBook ControllerviewFriendBooks
/api/booksGETBook ControlleraddBook
/api/booksDELETEBook ControllerviewMyShelf
/api/friendsBooks/:idGETBook ControllerviewFriendBook
/api/friendsBooks/:idGETBook ControllerdeleteBook
/api/bookRequestPOSTBook ControllermakeBookRequest
/api/deleteBookRequestPOSTBook ControllerdeleteBookRequest
/api/acceptBookRequestPOSTBook ControlleracceptBookRequest
/api/myBookRequestsGETBook ControllergetRequestedBooksToFriends
/api/myRequestedBooksGETBook ControllergetRequestedBooksToMe
/api/lentBooksGETBook ControllergetLentBooks
/api/borrowedBooksGETBook ControllergetBorrowedBooks
/api/getAllBooksFromFriendsGETBook ControllergetAllBooksFromFriends
/api/tradeRequestsPOSTBook ControllermakeTradeRequest
/api/deleteTradeRequestPOSTBook ControllerdeleteTradeRequest
/api/acceptTradeRequestPOSTBook ControlleracceptTradeRequest
/api/completeTradeRequestPOSTBook ControllercompleteTradeRequest
/api/viewFriendBooksPOSTBook ControllerviewFriendBooks

Schema

Bookshare database schema

Testing

Create bookshare_test database.

From within the root directory: cd into server directory and run the following to start testing.

mocha

Roadmap

View the app roadmap here

Team

Yasu Flores

Leorina Baybay

Jonathan Blaising

Contributing

See CONTRIBUTING.md for contribution guidelines.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free