Skip to content

Web-App for book reviews using Flask, PostgreSQL, Goodreads API

Notifications You must be signed in to change notification settings

guryaniv/book_reviews

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project 1 for Harvard's CS50's Web Programming with Python and JavaScript Course, with some Extras.
See- Project Instructions.

Book-Reviews web app, created using flask, postgreSQL, Goodreads API.

Implemented Components:

  • Registration: Users are able to register to the website, providing a username, password and Email address.
  • Login: Users, once registered, are able to log in to the website with their username and password. Also implemented a "remember me" option, sessions.
  • Create and Import: Using the create.py file, the database tabels and relationships are automatically created and books are imported to the database from a given books.csv file.
  • Search: Once a user has logged in, they can search for a bookby ISBN number, title, or author. After performing the search, the website displays a list of possible matching results, or some sort of message if there were no matches. If the user typed in only part of a title, ISBN, or author name, the search page finds matches for those as well.
  • Book Page: When users click on a book from the results of the search page, they are taken to a book page, with details about the book and any reviews that users have left for the book on your website.
  • Review Submission: On the book page, users are able to submit a review: consisting of a rating on a scale of 1 to 5, as well as a text component to the review where the user can write their opinion about a book. Users are not able to submit multiple reviews for the same book.
  • Goodreads Review Data: On the book page, we also display (if available) the average rating and number of ratings the work has received from Goodreads.
  • API Access: If users make a GET request to the website’s /api/ route, where is an ISBN number of a book, the website returns a JSON response containing the book’s title, author, publication date, ISBN number, review count, and average score.

Prerequisites:

See requirements.txt.

Run Instructions:

To run on your machine:

  1. Clone the repository
  2. Set an environment variable FLASK_APP=book_reviews.py
  3. Use the flask run command

The app is deployed at:
https://book-reviews-a.herokuapp.com

About

Web-App for book reviews using Flask, PostgreSQL, Goodreads API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published