Web Programming with Python and JavaScript
It is a book review and rating website using Flask and Postgres. You can find more than 4999 books with exclusive reviews and ratings. Also you can find ratings from a lot of readers through goodreads.
Install all dependencies by installing requirements.txt
Add DATABASE_URL
to evironment variable.
Run import.py
to setup database, create tables and import books.
url : '/'
Users can type the ISBN number of a book, the title of a book, or the author of a book. They can type in only part of a title, ISBN, or author name as well!
url : '/books?search=<query>'
After Searching a book it will redirect users to Books page where they can see a list of books matching their search query. Books will be shown in descending order according its publishing year.
url : '/book/<ISBN>'
Afer user click on a specific book, it will redirect to Book page, where they can see the ISBN number, the title, the author, publishing year, goodreads ratings, other user's reivews and ratings. If the user is logged in then they can post their own review and rating. They can post only one review and rating.
url : '/login'
User can login with their credentials. After login, it will redirect to search page. But if user come from a book page and try to login, it will redirect to that previous book page.
url : '/signup'
User can Sign up setting their credentials. Username is unique, they can not use used usernames. After Sign up, it will redirect to search page. But if user come from a book page and try to Sign up, it will redirect to that previous book page.
url : '/api'
Description of API functionalities
url : '/api/<ISBN>'
Return json data of a book by getting a GET
request using the ISBN number.
{
"title": "Memory",
"author": "Doug Lloyd",
"year": 2020,
"isbn": "1632168146",
"review_count": 28,
"average_score": 5.0
}