This is a reading list application where users can search for books and save them to their account, and remove them from the list if they no longer want them there. It uses Google Books Web API to retrieve book data, and GraphQL to query a MongoDB database.
Until recently, the application was available deployed on Heroku using their free account options. I am hoping to have the application deployed elsewhere soon.
The old link was here: https://serene-wildwood-14868.herokuapp.com/
At the moment - the application can be stored and run locally - if you wish to view it. I will also work on some demonstration videos and screenshots as soon as possible.
To install / run the application locally, you will require node package manager. Then follow the following instructions:
- Clone the repository to your local machine.
- Navigate to the containing directory in the command line.
- Run
npm install
to install all required node modules. - Run
npm start
, to start the application.
Create an account using the login/sign up page. Search for books using the search bar. Save books using the 'save book' button. To view saved books, look at the saved book tab at the top. If users no longer want these books saved to their accounts, they can remove the books with the delete book option.
This project is licensed under MIT.
This project has been licensed with MIT. Please feel free to use code from the project, and contact me if you would like to help develop this further.
This application was built for the University of Birmingham Coding Bootcamp. The project was a refactor of an existing application - built as a RESTful API with a React front-end - and I adapted it to use a GraphQL API with new React hooks.
I would like to do a full redesign of the front-end when I have time, as I feel that would make me feel like the application was fully my own. I am working on some design ideas here, and will update this powerpoint with notes and a wireframe when I have the time: https://docs.google.com/presentation/d/1caRI04K9tN8VymzXP-9-b8l8m6U95dmpXCTOrK_gTeY/edit#slide=id.p
If I was going to add an additional user feature - it would be to let users create multiple 'reading lists' rather than just one list; and a 'mark as read' option.
No tests are built into this application at present.
If you have any questions about this project, please contact me at:
Email: djbowen95@gmail.com
GitHub: djbowen95