This project provides organized data about the contents of a library.
Alpha released.
- fork and clone this repository
- [create] (https://virtualenvwrapper.readthedocs.org) and activate a [virtualenv] (https://virtualenv.pypa.io)
- pip install -r requirements.txt
- cd [static] (static/README.md) && npm install && gulp
- cp database/books-sample.sqlite database/books.sqlite
- python controller.py
- go to [localhost:5000] (http://localhost:5000) in the browser
Build the Docker image:
docker build -t library-org .
Run the Docker image:
docker run \
-p 5000:5000
-v /path/to/library.cfg:/app/library.cfg \
-v /path/to/books.sqlite:/app/database/books.sqlite \
localhost/library-org:latest
- Advanced Search
- API
- New Book submit-by-isbn with requests to multiple services. User selects service to pull data from.
Programmable Web lists 49 library APIs: http://www.programmableweb.com/category/library%2Breference/apis?category=20272%2C20066 librarything seems to be a very good 'tooling' api: http://www.librarything.com/api
Database is currently unique on isbn, we care about being unique on open library id, maybe isbn. There is a place in control flow, the new book form that still relies on ISBN being unique. This should probably wholesale convert to LCCN and still allow people to enter by isbn for convenience. This adds some complexity as there are a great many isbns for one book.