Book Club

A book review website where user's can write and share reviews for specific books.

Created for my Code Institute Backend Development Milestone Project.

A link to the live site can be found here.

UX

Primary Goals

To create a site where user's can easily write, share and read book reviews and find new books they want to read.

Developer Goals

  • To gain experience using Flask and MongoDB to create a full stack site backed by a well designed database.
  • To create a site where I will be able to find new good books to read.

User Stories

As a reviewer I want:

  • An intuitive way to either register a new account or log into my existing account.
  • An intuitive form for writing my review so I can easily write a new review including:
    • Star system to score my review out of 5.
    • Large text area to write up my review.
  • A profile area where I can view the reviews I have written.
  • A way to edit the reviews I have written so I can change them if I notice mistakes or change my mind about something.
  • A way to delete reviews I no longer want to be on the website.

As a user (looking to buy a book) I want:

  • A home page that displays the most recent reviews on the page so I can quickly see some reviews.
  • A page where all the reviews are shown so I can see all the reviews.
  • A search bar where I can search for reviews for a specific book I want to read.
  • An intuitive layout for the page for each review so I can easily gain all the information I need.
  • A way to upvote reviews I think were good so that other users can have an idea of which reviews are good.
  • A link from each review to purchase the book so that I can easily buy the book if I decide I want to.

Wireframes

Features

Existing Features

Features Left to Implement

Technologies Used

Testing

The testing of the site is documented in testing.md

Deployment

Credits

Code

  • The script in signup-validation.js for checking the passwords match on signup.html was adapted from this jsfiddle.
  • The code for the login and signup forms and methods was adapted from that used in the Code Institute Back End Development "Task Manager" miniproject.

Content

Media

Acknowledgements