A book uploader bot that transfers documents from public libraries such as Google Books, and Punjab Digital Library etc to Internet Archive. Built for Wikimedia Tool Labs. Check out BUB2 on Toolforge!
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
- Node.JS ( check for installation with
npm -v
andnode -v
on terminal ) - Docker toolbox ( Optional )
- Redis
- Clone the repository
git clone https://github.com/coderwassananmol/BUB2
- Navigate to the project directory on the terminal:
cd BUB2
. - For developers, checkout to develop branch:
git checkout develop
- Run
npm install
Rename .env.example
to .env
. Then, to fill the credentials,
- Make an account on archive.org and note down the sign-in credentials. Using these details, fill 'email' and 'password' fields in the
.env
file. - Go to https://archive.org/account/s3.php . Generate the access and secret keys and fill
them in the
.env
file in the corresponding fields. - Go to Google Developers console. Make a new project to run the app. In that Google Developers project, search for 'Books API' in the Google API console, then enable the API for the project, then generate the API keys, and then copy and paste the API key in the
GB_Key
field. - Fill the
redishost
field with docker if you are using docker, otherwise 127.0.0.1 - Fill the
redisport
field with 6379, which is the default port number for redis. - Fill
service
field with your mail service provider (Ex. gmail, outlook) Note: In order to send email through gmail, you may need to allow less secure app access. To turn it on, go to https://myaccount.google.com/lesssecureapps?pli=1
- Refer to Redis for download and setup documentation ,or
docker run --name redis -p 6379:6379 redis
docker start redis
docker-compose up -d
docker-compose start
- Run
npm run dev
for development andnpm run start
for production. - Open your browser and navigate to http://localhost:5000
Please read CONTRIBUTING.md for information on how to contribute to BUB2.
See LICENSE.md for more information.
There was no Node.js wrapper available for Internet Archive, so I decided to write the Node implementation to upload books to Internet Archive. If you like this repository, show your support by starring the project. Cheers!