{"id":20098763,"url":"https://github.com/ashlynn4567/book-search-engine","last_synced_at":"2026-04-03T23:36:17.451Z","repository":{"id":46757752,"uuid":"508125038","full_name":"ashlynn4567/Book-Search-Engine","owner":"ashlynn4567","description":"Book Search Engine is a site in which users can search for any book title or author, and search results containing their query will appear below. In this project, I integrate a GraphQL API into a fully functioning book engine that was built using the MERN stack, replacing the previous RESTful API.","archived":false,"fork":false,"pushed_at":"2022-08-04T18:11:18.000Z","size":44250,"stargazers_count":0,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T03:45:53.206Z","etag":null,"topics":["apollo","bcrypt","concurrently","css","expressjs","graphql","heroku","javascript","jwt","mern-stack","mongodb","mongoosejs","nodejs","nodemon","npm","react"],"latest_commit_sha":null,"homepage":"https://arcane-sands-85119.herokuapp.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ashlynn4567.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-28T02:15:05.000Z","updated_at":"2022-07-26T17:32:17.000Z","dependencies_parsed_at":"2022-07-19T22:48:25.352Z","dependency_job_id":null,"html_url":"https://github.com/ashlynn4567/Book-Search-Engine","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashlynn4567%2FBook-Search-Engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashlynn4567%2FBook-Search-Engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashlynn4567%2FBook-Search-Engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashlynn4567%2FBook-Search-Engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashlynn4567","download_url":"https://codeload.github.com/ashlynn4567/Book-Search-Engine/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241541112,"owners_count":19979115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apollo","bcrypt","concurrently","css","expressjs","graphql","heroku","javascript","jwt","mern-stack","mongodb","mongoosejs","nodejs","nodemon","npm","react"],"created_at":"2024-11-13T17:06:29.271Z","updated_at":"2025-12-30T19:35:36.095Z","avatar_url":"https://github.com/ashlynn4567.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Book-Search-Engine\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Table-of-Contents\n\n- [Description](#description)\n- [Deployed Site](#deployed-site)\n- [Features](#features)\n- [Technologies](#technologies)\n- [Future Development](#future-development)\n- [Credits](#credits)\n\n## Description\n\nBook Search Engine is a site in which users can search for any book title or author, and search results containing their query will appear below. In this project, I integrate a GraphQL API into a fully functioning book engine that was built using the MERN stack, replacing the previous RESTful API.\n\n## Deployed Site\n\nFollow [this link](https://arcane-sands-85119.herokuapp.com/) to view and use my site!\n\n## Features\n\nThis is how the front-end webpage appears to viewers. It is responsive, adapting to multiple screen sizes. The main page shows new users a menu, with which they can search for books, login, or signup. If the user is logged in, the buttons they will see options to search for books, view their saved books, or logout.\n\n\u003cp align=\"center\"\u003e\n\u003cimg alt=\"A screenshot of the homepage of Book Search. Users can search for books by filling out the search field, or they can login/signup by clicking the login/signup button.\" src=\"./assets/images/book-search-screenshot.jpg\"/\u003e\n\u003c/p\u003e\n\nClicking the login/signup button on the main page will bring users to a login portal. The user can toggle the modal between a \"sign up\" or \"login\" option. Here they can either enter new credentials to sign up as a user in the signup section, or they can enter their already verfied credentials into the login section. To sign up, users must provide a username, a valid email address, and a password. To login, they only need to provide their email address and password for verification. Later, users can logout using the \"logout\" button that appears in the site's navigation.\n\n\u003cp align=\"center\"\u003e\n\u003cimg alt=\"A demonstration gif showing the user signing up for the site, then logging out.\" src=\"./assets/images/book-search-demo.gif\"/\u003e \n\u003c/p\u003e\n\nIf the user selects \"search for books,\" they are then presented with an input field to search for books. Clicking \"submit\" will return a list of search results, each featuring a book's title, author, description, image, and a link to that book on the Google Books site. If the user is logged in while searching for books, then an option appears for them to save a book to their account. By clicking on the save option, that book is added to the \"Saved Books\" page. Users can manage their saved books from this page by deleting that book from their saved books list.\n\n\u003cp align=\"center\"\u003e\n\u003cimg alt=\"A demonstration gif showing the user searching for a book, saving it to their list, and managing their saved books by deleting one.\" src=\"./assets/images/book-search-demo-2.gif\"/\u003e\n\u003c/p\u003e\n\n## Technologies\n\n- React.js\n- CSS\n- Bootstrap\n- JavaScript\n- Node.js\n- npm\n- [Express.js](https://expressjs.com/)\n- MongoDB\n- [Mongoose](https://mongoosejs.com/)\n- [@apollo/client](https://www.npmjs.com/package/@apollo/client)\n- [apollo-server-express](https://www.npmjs.com/package/apollo-server-express)\n- [graphQL](https://graphql.org/)\n- [JWT](https://jwt.io/)\n- [bcrypt](https://www.npmjs.com/package/bcrypt)\n- [Google Books API](https://developers.google.com/books)\n- [concurrently](https://www.npmjs.com/package/concurrently)\n- [nodemon](https://www.npmjs.com/package/nodemon)\n\n## Future Development\n\nIn the future, I would like to add the following improvements:\n\n- I would like to add a note function, where users can record their thoughts about the book as they read.\n- I would like to add an option where users can click on the book to view purchasing options across multiple platforms.\n\nI'm always interested in refactoring code to improve it's functionality. If you would like to suggest your own improvements, you can reach me at the links below.\n\n- \u003ca href=\"mailto:ashleylynnsmith.dev@gmail.com\"\u003eEmail\u003c/a\u003e\n- \u003ca href=\"https://github.com/ashlynn4567\"\u003eGitHub\u003c/a\u003e\n- \u003ca href=\"https://www.linkedin.com/in/ashley-lynn-smith/\"\u003eLinkedIn\u003c/a\u003e\n\n## Credits\n\nThis project was built with the help of the University of Oregon's Coding Boot Camp.\n\n## Licensing\n\nThe application is covered under the following license: [MIT](https://opensource.org/licenses/MIT)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashlynn4567%2Fbook-search-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashlynn4567%2Fbook-search-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashlynn4567%2Fbook-search-engine/lists"}