By Vaishali Patel, Mac Greene, Insha Sayani, Michael Martens, and Jon Shogren
NOVELty book swap is a full-stack application that lets User securely signup and login to create their own digital library to share with other members. Users can search the books they have at home by ISBN and add to their personal library, ready to share. Once User has created an account and added some books, they are able to see other members' books on the Browse page. Features include requesting to borrow a book, deleting books from your library, User managed check-out of their personal library, and of course tracking of your owned and borrowed books from your NOVELty library!
- Description
- Table of Contents
- Usage
- Installation
- License
- Technologies Employed
- Future Development
- Contributing
- Tests
- Questions
AS A book lover
I WANT an online personal library of all my books
SO THAT I can book swap with my peers and not lose track
GIVEN a full-stack application deployed to Heroku that accepts user input
WHEN I sign up for the website
THEN a User Profile is created with my credentials
WHEN I log in with my credentials
THEN I am given access to browse all available books that are not mine
WHEN I click on a book
THEN information about its Cover, Title, Description, Authors, Category, Owner and Availability are displayed
WHEN I choose to borrow the book
THEN an email to the Owner with intent to borrow is drafted and can be sent by User
WHEN I enter the Library tab
THEN I can search and add books from my personal library to digital using the ISBN number
WHEN I delete a book from my library
THEN the book is deleted from my books and the database (db)
WHEN I check-out a book to another User
THEN that book shows up in the Borrower's 'Books I Borrow' tab of their Library, plus availability and borrower information is stored in the db
WHEN I check the book back into my Library
THEN the book is removed from Borrower's Library, the status is set to available, and borrower information is reset in the database
WHEN I click the logout tab
THEN session is ended and User can access the application by logging in again
To run this locally:
- Pull down and branch this repository
- Run
npm i
to install all dependencies - Seed the database by running
node seeds/seed.js
- Run the app with
node server.js
ornpm run start
To use this app in production, visit: https://novelty-book-swap.herokuapp.com/
The following shows the full-stack application's appearance and functionality:
This project is licensed under the MIT license.
A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.
For more information visit MIT Licensing.
Model
- MySQL
- Sequelize
- Bcrypt
- Dotenv
- Google API
View
- CSS (standard & Bulma)
- HTML
- JS
- Node.js
- Handlebars.js
Controller
- Express.js
- Axios
We would like to continue to add the following functionality to our application:
- Search for books by name, title, etc.
- Use SendGrid to email borrower request
- Forgot password
- Update your profile
- In-app messaging
- Rate Users (lender/borrower)
- Damage tracking/reporting (photo trail)
- Accountability on due dates of return
- Explore tab with new books to User
- Explore tab with recommendations based off User history
We'd love for you to contribute! In order to do so, visit NOVELty Book Swap and fork the repository. We currently require two (2) approvals by our QA team in order to merge to main
.
Please take a look at our Future Development section to see what features we are looking to expand on.
None
Find us on Github via the individual links below:
Or visit our app's repository on GitHub: NOVELty Book Swap
© 2022 NOVELty Book Swap (Vaishali Patel, Mac Greene, Insha Sayani, Michael Martens, Jon Shogren), Confidential and Proprietary. All Rights Reserved.