= COPS =

COPS stands for Calibre OPDS (and HTML) Php Server.

COPS output is valid the unofficial OPDS validator : 
http://opds-validator.appspot.com/

= Why ? =

In my opinion Calibre is a marvelous tool but is too big and has too much 
dependencies to be used for its content server.

That's the main reason why I coded this OPDS server. I needed a simple 
tool to be installed on a small server (Seagate Dockstar in my case).

I initially thought of Calibre2OPDS but as it generate static file no
search was possible.

Later I added an simple HTML catalog that should be usable on my Kobo.

So COPS's main advantages are :
 * No need for many dependencies.
 * No need for a lot of CPU or RAM.
 * Not much code.
 * Search is available.
 * With Dropbox / owncloud it's very easy to have an up to date OPDS server.
 * It was fun to code.
 
If you want to use the OPDS feed don't forget to specify feed.php at the end of your URL.

= Prerequisites =

1. 	PHP 5.3 or 5.4 with GD image processing & SQLite3 support.
2. 	A web server with PHP support. I only tested with various version of Nginx.
    Other people reported it working with Apache and Cherokee.
3.  The path to a calibre library (metadata.db, format, & cover files).

On any Debian base Linux you can use :
 aptitude install php5-gd php5-sqlite

= Install =

1.  Extract the zip file to a folder in web space (visible to the web server).
2.  If a first-time install, copy config_local.php.example to config_local.php
3.  Edit config_local.php to match your config.
4.  If needed add other configuration item from config_default.php

If you choose to put your Calibre directory inside your web directory then you
will have to edit /etc/nginx/mime.types to add this line :
application/epub+zip epub;

= Known problems =

Not a lot ;)

Please see https://github.com/seblucas/cops/issues for open issues

= Need help =

Please read https://github.com/seblucas/cops/wiki

= Disclaimer =

It's tested by me and many other users but there's still some little bugs around ;)

= Credits = 

 * All localization informations come from Calibre2OPDS (http://calibre2opds.com/)
 * Locale message handling is inspired of http://www.mind-it.info/2010/02/22/a-simple-approach-to-localization-in-php/
 * str_format function come from http://tmont.com/blargh/2010/1/string-format-in-php
 * All icons come from Font Awesome : http://fortawesome.github.io/Font-Awesome/
 * Thanks to all testers
 
External libraries used : 
 * JQuery : http://jquery.com/
 * Magnific Popup : http://dimsemenov.com/plugins/magnific-popup/
 * Php-epub-meta : https://github.com/splitbrain/php-epub-meta with some modification by me
                   https://github.com/seblucas/php-epub-meta
 * TbsZip : http://www.tinybutstrong.com/apps/tbszip/tbszip_help.html
 * DoT.js : http://olado.github.io/doT/index.html
 * PHPMailer : https://github.com/PHPMailer/PHPMailer
 * js-lru : https://github.com/rsms/js-lru

= Copyright & License =

COPS - 2012-2013 (c) Sébastien Lucas <sebastien@slucas.fr>

See COPYING and file headers for license info

