a39587085e | 6 years ago | |
---|---|---|
app | 6 years ago | |
whoosh/Book | 6 years ago | |
.DS_Store | 6 years ago | |
.gitignore | 6 years ago | |
README.md | 6 years ago | |
import_csv.py | 6 years ago | |
init.py | 7 years ago | |
init_db.sh | 6 years ago | |
rebuild.py | 7 years ago | |
requirements.txt | 6 years ago | |
run.py | 6 years ago | |
test.py | 7 years ago | |
test2.py | 7 years ago | |
xpublibrary.csv | 7 years ago | |
xpublibrary_including_filelinks.csv | 6 years ago | |
xpublibrary_including_filelinks2.csv | 6 years ago | |
xpublibrary_old.csv | 7 years ago |
README.md
XPUB Library
Library running on Flask and SQLight (maybe to be replaced with a python shelve)
Installation
Install the required dependencies:
$ pip3 install -r requirements.txt
Initialise database
$ bash init_db.sh
Install rqlite
Linux
To download and start rqlite on Linux, execute the following in a shell.
curl -L https://github.com/rqlite/rqlite/releases/download/v4.3.0/rqlite-v4.3.0-linux-amd64.tar.gz -o rqlite-v4.3.0-linux-amd64.tar.gz
tar xvfz rqlite-v4.3.0-linux-amd64.tar.gz
cd rqlite-v4.3.0-linux-amd64
./rqlited ~/node.1
OSX
To download and start rqlite on OSX, execute the following in a shell.
curl -L https://github.com/rqlite/rqlite/releases/download/v4.3.0/rqlite-v4.3.0-darwin-amd64.tar.gz -o rqlite-v4.3.0-darwin-amd64.tar.gz tar xvfz rqlite-v4.3.0-darwin-amd64.tar.gz cd rqlite-v4.3.0-darwin-amd64 ./rqlited ~/node.1
Further install notes (bugs)
-
create the covers folder inside the uploadsfolder
-
don't forget to chmod the uploads and coverfolder ;-)
-
For Mac users -> brew install imagemagick@6 in order to install wand
For those on mac and using homebrew, it seems like Wand doesn't support imagemagick 7 yet as mentioned in other answers.
There's a new brew formula for Imagemagick 6 which can be used to install the older version in the meanwhile:
brew install imagemagick@6
Create a symlink to this newly installed dylib file as mentioned in other answer to get things working.
ln -s /usr/local/Cellar/imagemagick@6/<your specific 6 version>/lib/libMagickWand-6.Q16.dylib /usr/local/lib/libMagickWand.dylib
Run the program
Initialize rqlite database on one terminal (from rqlite install directory)
$ ./rqlited ~.node
Run the script in another terminal (from XPPL directory):
python3 run.py
API
Has currently 2 entrypoints:
/api/books
GETs all the books in the database
/api/book/id
GETs a specific book by its id