Skip to content

This app is a single page, dynamically rendered React portfolio. It allows users to search books and save their favourite titles.

Notifications You must be signed in to change notification settings

Laura-Kam/Book-Hunt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Book Hunt

This app is a single page, dynamically rendered React portfolio. It allows users to search books and save their favourite titles.

Description

  • AS AN avid reader I WANT to search for new books to read SO THAT I can keep a list of books to purchase

GIVEN a book search engine

  • WHEN I load the search engine THEN I am presented with a menu with the options Search for Books and Login/Signup and an input field to search for books and a submit button
  • WHEN I click on the Search for Books menu option THEN I am presented with an input field to search for books and a submit button
  • WHEN I am not logged in and enter a search term in the input field and click the submit button THEN I am presented with several search results, each featuring a book’s title, author, description, image, and a link to that book on the Google Books site
  • WHEN I click on the Login/Signup menu option THEN a modal appears on the screen with a toggle between the option to log in or sign up
  • WHEN the toggle is set to Signup THEN I am presented with three inputs for a username, an email address, and a password, and a signup button
  • WHEN the toggle is set to Login THEN I am presented with two inputs for an email address and a password and login button
  • WHEN I enter a valid email address and create a password and click on the signup button THEN my user account is created and I am logged in to the site
  • WHEN I enter my account’s email address and password and click on the login button THEN I the modal closes and I am logged in to the site
  • WHEN I am logged in to the site THEN the menu options change to Search for Books, an option to see my saved books, and Logout
  • WHEN I am logged in and enter a search term in the input field and click the submit button THEN I am presented with several search results, each featuring a book’s title, author, description, image, and a link to that book on the Google Books site and a button to save a book to my account
  • WHEN I click on the Save button on a book THEN that book’s information is saved to my account
  • WHEN I click on the option to see my saved books THEN I am presented with all of the books I have saved to my account, each featuring the book’s title, author, description, image, and a link to that book on the Google Books site and a button to remove a book from my account
  • WHEN I click on the Remove button on a book THEN that book is deleted from my saved books list
  • WHEN I click on the Logout button THEN I am logged out of the site and presented with a menu with the options Search for Books and Login/Signup and an input field to search for books and a submit button

Table of Contents

Technologies used

Technologies-used Technologies-used Technologies-used Technologies-used Technologies-used Technologies-used Technologies-used

How to install

In the terminal in the root folder, start by typing "npm i". This will install all the dependencies. Then run 'npm run build' and 'npm run develop'. To run the app, 'npm start'.

Usage

Through 'npm start', the local host server will start on local host 3000.

License

License GitHub

Screenshot

screenshot

Bugs

  • useMutation hooks incorrectly rendered

  • Bug fixed.

Version history

  • 0.1 Auth middleware function set up to work with GraphQL API
  • 0.2 Implemented Apollo Server and applied it to Express server as middleware.
  • 0.3 Exported TypeDefs and resolvers, and definied the query and mutation functionality to work with Mongoose Models.
  • 0.4 Schemas set up with Query, Mutation, Book, Auth and User types.
  • 0.5 Front end files configured to work with Mutation and Query Hooks.

Links to repo and heroku

Github Repository

LiveURL

Contributing

To contribute to the repository yourself please:

Git clone the repository, work on the code, then make a pull request.

Contact

If you have any questions, or would like to get in touch find me on GitHub Laura-Kam or email me at laurakam91@gmail.com.

About

This app is a single page, dynamically rendered React portfolio. It allows users to search books and save their favourite titles.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published