The free-programming-books-search is a companion project of free-programming-books. It allows users to search by book title or author and filter by language. The search index is updated once per day, so changes made on free-programming-books may not be immediately reflected.
- Make sure you have Node.js installed. If you already do, skip to Running the Website
- Otherwise, download the LTS installer from Node.js website.
- Follow the instructions of the installer, make sure npm is listed as a package to be installed.
- Click Install.
- Verify that Node.Js has been installed by going to command line and typing in
node
. It should show the current version. - Close out of Node by either closing and reopening the command line or with Ctrl + C.
- Make sure to check out the NPM website for more info.
- Make sure you have Git installed.
- Clone the repo from Github with Git.
- Navigate to the folder using command line. (easy way is to type "cd" and then drag and drop the folder into command line)
- Type
npm install
- Type
npm install react-scripts
- Type
npm start
. At this point, the commnand prompt should start up the server, and a tab in your default browser should open up to localhost.
MAKE SURE YOU HAVE COMPLETED THE INSTALLATION STEPS FIRST!
- First, make sure that you the local folder containing the files has a remote configured called "origin".
- If you aren't sure, navigate to the folder using Git (type "cd", then drag and drop folder in to Git command line.).
- Type
git init
- Type
git remote add origin <repo url>
,replacing with the url of your github repository.
- Now, run
npm install -g gh-pages
. - Run
npm run deploy
. - This should deploy your code to "https:yourusername.github.io/free-programming-books-search/"
- The search function works locally.
-
What database are we using to store the books? NONE! The books are stored in a json file which is downloaded locally.
-
I added a book but it's not showing up on search? Give it some time. The parser is run once a day, so it may tak up to 24 hours for the search to reflect that.