Library prototyping based on Calibre
This repository has been archived on 2024-07-28. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Luke Murphy 6f1f6fec52
Add new docs changelog entry
2020-03-01 02:09:05 +00:00
calibrestekje Enable writing to the DB 2020-02-29 23:24:43 +00:00
changelog Add new docs changelog entry 2020-03-01 02:09:05 +00:00
docs Add flask docs 2020-03-01 02:02:14 +00:00
test Get tests and docs passing 2020-02-29 23:52:18 +00:00
.gitignore Add ignore for test dbs 2020-02-28 10:51:58 +00:00
.readthedocs.yml Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
.travis.yml Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
CHANGELOG.rst Add changelog entry 2020-03-01 00:39:24 +00:00
CODE_OF_CONDUCT.rst Wrap CoC 2020-02-27 19:46:00 +00:00
CONTRIBUTING.rst Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
LICENSE Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
MANIFEST.in Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
README.rst Add docs about flask extension 2020-03-01 02:07:50 +00:00
mypy.ini Add mypy bindings for sqlalchemy 2020-02-27 17:57:31 +00:00
pyproject.toml Add py38 and quote 2020-02-27 19:46:11 +00:00
setup.cfg Avoid this extra work 2020-02-29 22:35:55 +00:00
setup.py Bootstrap calibrestekje 2020-02-26 19:40:03 +01:00
tox.ini Get tests and docs passing 2020-02-29 23:52:18 +00:00

README.rst

.. _header: ************* calibrestekje ************* .. image:: https://img.shields.io/badge/license-GPL-brightgreen.svg :target: LICENSE :alt: Repository license .. image:: https://badge.fury.io/py/calibrestekje.svg :target: https://badge.fury.io/py/calibrestekje :alt: PyPI package .. image:: https://travis-ci.com/decentral1se/calibrestekje.svg?branch=master :target: https://travis-ci.com/decentral1se/calibrestekje :alt: Travis CI result .. image:: https://readthedocs.org/projects/calibrestekje/badge/?version=latest :target: https://calibrestekje.readthedocs.io/en/latest/ :alt: Documentation status .. image:: http://img.shields.io/liberapay/patrons/decentral1se.svg?logo=liberapay :target: https://liberapay.com/decentral1se :alt: Support badge .. _introduction: Library prototyping based on Calibre ------------------------------------ Calibrestekje is a Python library which provides a way to work with the `Calibre`_ database outside the context of the Calibre desktop and web interfaces. Generated `SQLAlchemy`_ database bindings (see `sqlacodegen`_ for more) are provided which allow for read/write access to an existing Calibre database. These bindings are more fine grained than Calibres `database interface`_ and provide direct access to the Database table layer. A `flask`_ extension is also provided for getting started with web prototyping. Please see `flask-calibrestekje`_ and `the flask usage documentation`_ for more. .. _Calibre: https://calibre-ebook.com/ .. _SQLALchemy: https://docs.sqlalchemy.org/ .. _sqlacodegen: https://github.com/agronholm/sqlacodegen .. _database interface: https://manual.calibre-ebook.com/db_api.html .. _flask: https://flask.palletsprojects.com/ .. _flask-calibrestekje: https://github.com/decentral1se/flask-calibrestekje .. _the flask usage documentation: https://calibrestekje.readthedocs.io/en/latest/flask.html .. _example: Quick Example ************* .. code-block:: python from calibrestekje import Book, Publisher, init_session session = init_session("sqlite:///mymetadata.db") publisher = (session.query(Publisher) .filter(Publisher.name == "MIT Press").one()) books = (session.query(Book) .filter(Book.publishers.contains(publisher))) print(f"Books published by MIT Press: {books.count()}") .. _documentation: Documentation ************* * https://calibrestekje.readthedocs.io/ Mirroring ********* * `hack.decentral1.se/decentral1se/calibrestekje`_ .. _hack.decentral1.se/decentral1se/calibrestekje: https://hack.decentral1.se/decentral1se/calibrestekje/