Deployment: https://the-booklover.herokuapp.com/
Youtube: https://www.youtube.com/watch?v=6i0gpEAdXM0&pbjreload=101
Development of a Book Reviewing website - 'The Book Fair'
The Book Fair website allows its user to,
- Register
- Login
- search books
- see the book details
- leave comments and rate the book on the scale of 1 to 5.
- Book's average rating and comments left by users
- pulls Rating information from third-party websites Good Reads and Google Books.
- Pulls book publisher details, description, book cover thumbnail image from the Google books API.
- Database setup using Heroku and PostgreSQL.
- Supports smaller screens.
- Users can make a API get request to the website by https://the-booklover.herokuapp.com/api/isbn.
- isbn is the book isbn number:
- Example:
-
https://the-booklover.herokuapp.com/api/0380753022 (isbn: 0380753022)
{ "author":"Johanna Lindsey", "average_score":2.67, "isbn":"0380753022", "review_count":4, "title":"Gentle Rogue", "year":1990 }
-
404 error if isbn in not found in the DB:
{ "error":"Invalid isbn number", "status_code":404 }
-
- Example:
- isbn is the book isbn number:
# clone repository
git clone https://github.com/saarikabhasi/CS50-project1-Books.git
# Create a virtualenv(optional)
python3 -m venv venv
# Activate the virtualenv
source venv/bin/activate or .venv/bin/activate
# Install all dependencies
pip install -r requirements.txt
# ENV Variables
export FLASK_APP=application.py
export FLASK_ENV=development #To enable debug mode. Reference#https://flask.palletsprojects.com/en/1.1.x/config/
export DATABASE_URL = Heroku Postgres DB URI
export GR_key = Goodreads API Key. Reference#https://www.goodreads.com/api/keys
-
Books( book_id integer, isbn varchar, title varchar, author varchar, year integer)
- Primary key:
- isbn
- Primary key:
-
users(user_id integer,email_id varchar, password varchar,name varchar)
- Primary key:
- email_id
- Primary key:
-
reviews(id integer, contents text NULL , rating numeric NULL, isbn varchar, email_id varchar)
- Primary key:
- id
- Foreign Key:
- isbn refers to (books:isbn)
- email_id refers to (users:email_id)
- Primary key:
-
HTML5
-
Cascading Style Sheets (CSS)
NAIR SAARIKA BHASI