Skip to content
forked from nagck/NOVELty

The reading list and book recommendation application allows user to keep track of their reading list and find recommendations from the community. It is built under MVC framework and uses Sequelize as the database framework.

License

Notifications You must be signed in to change notification settings

akwanmtl/NOVELty

 
 

Repository files navigation

NOVELty (Project #2)

Have you ever read a book and thought to yourself: “I need to share this book with someone?”.

YOU HAVE COME TO THE RIGHT PLACE!!.

NOVELty is one-stop shop for keeping track of all the books you are reading/read, get personalized book recommendations and participate in your book reading community by sharing the book that you like and participate in book reviews.

Description

NOVELty is a full-stack application devloped using Node, Express, JavaScript, MySQL, Sequelize, Handlebars, Bootstrap, HTML, CSS, Passport, ORM and several APIs.

  • The application allows a user to sign up with their email address
  • Once signed in, users can keep track of books they are reading/read, get personalized recommendations, and save the desired books to their reading list.
  • User also has the option to join a vibrant book community and take part in book review process.
  • User's book ratings and reviews are viewable by their peers.

Link to functional application deployed on Heroku:

https://novelty.herokuapp.com/

Table of Contents

Team Members

User Story

  • As someone always looking to recommend new books based on my preferences.
    I want to be able to have the app track whether I finish reading it or not
    So that I can have books recommended to me based on similar interests and the ratings given by the API.

  • As a user of the app,
    I want a clean dashboard interface to easily view and update my preferences, books and recommendations.
    So that I can easily use and navigate the app and spend more time reading.

  • As a fan of books,
    I want to be able to share my literary preferences, list of books read, and books I’m reading.
    So that I can receive recommendations from other users with similar tastes.

  • As a user of the app,
    I want to be able to share personal ratings of books to others.
    So that others can find out whether or not users with similar book preferences recommend them or not.

Installation

  1. To install this code, download the zip file and extract the files to a designated directory on your node.js server without changing the directory/folder structure, or use GitHub's guidelines to clone the repository.
  2. Once the code is extracted, navigate to the project directory and execute 'npm install' command to install node.js and related dependencies.
  3. Create an empty database schema in MySQL database. Note: In case you do not have a running MySQL database, you can download and install the same from MySQL Community Server.
  4. Update MySQL connection information in config.json file with correct MySQL database/port/user/password details.

Also, the application is currently hosted on Heroku and you can access it at https://novelty.herokuapp.com.

Usage

The application can be invoked by using the following command and follow the instructions after that:

node server.js

Point your browser to http://localhost:8080/ to start using the application.

Screenshot of the application:

image

image

Link to walkthrough video demonstrating the functionality of the application:

https://drive.google.com/file/d/1pZ_C9m36ZAjkKq378mMz5orE7E7Pj_Mq/view?usp=sharing

Technologies Used:

Credits

License

Licensed under the MIT license.
badge

Contributing

Pull requests are welcome. For any changes, please open an issue first to discuss what you would like to change.

Feedback

Feedback is always appreciated. If you are interested in fixing any issues and contributing directly to the code base, please provide at:

About

The reading list and book recommendation application allows user to keep track of their reading list and find recommendations from the community. It is built under MVC framework and uses Sequelize as the database framework.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 76.3%
  • Handlebars 12.7%
  • CSS 9.6%
  • HTML 1.4%