BicBucStriim streams books, digital books. It fills a gap in the functionality of current NAS devices, which provide access to your collection of music, videos and photos – but not books. BicBucStriim covers that area and provides web-based access to your e-book collection.

BicBucStriim was created when I bought a NAS device (Synology DS 512+) to store my media on it. NAS devices like the Synology DS typically include media servers that publish audio, video, photos, so that you can access your media from all kinds of devices (TV, smart phone, laptop …) inside the house, which I found very convenient. Unfortunately there was nothing like that for e-books. So I started to develop BicBucStriim.

BicBucStriim is a simple PHP application that runs in the Apache/PHP environment provided by the NAS (or any other server). It assumes that you manage your e-book collection with Calibre. The application reads the Calibre data and publishes it in HTML form. To access the e-book catalog you simply point your ebook reader to your NAS, select one of your e-books and download it.

Want to try it?

Problems? Ideas?

Want to add, change it? Have a look at the code …


BicBucStriim is still under development. Version 1.3:

New in version 1.3


BicBucStriim just displays what is stored in your Calibre library. The start page lists the most recent books in your library, assuming that they are new and therefore need to be read:

The index lists the most recent books

In addition to that the main menu shows four more ways to navigate through your library: by book title, author name, book tag or series name. All sections work in the same way, you either scroll through the listing or search by entering something in the search bar at the top.

Navigating through your library by authors

Once a book is selected, the app shows a details page with title, author information, tags and series if available, and of course the book description. In the download section of that page there are download links for all book formats stored in the Calibre library. Click on a link and the book file will be immediately sent to your device.

A detail page

If a book contains metadata like ISBN numbers, these can be easily converted automatically to links. Just define a template for it.

If your Calibre library contains custom columns they will be displayed here too, formatted as a table. The app will display all columns with values for the current book. However, composite custom columns are not supported!

Furthermore, it is now possible to add custom information about individual authors. Traditionally Calibre is focussed on books, the titles have detail pages and are visualized by their cover images. Authors existed only as names. BicBucStriim tries to chnage that and adds the possibilit to add metadata to authors. The author apges aren’t restricted anymore to listing the books for an author, but can also contain:

An author`s page with image and link

The author information can be added by clicking on the black edit button in the top right corner of each author page. A menu provides then functions to add/delete an image or to edit the links on the page. Please note that these features are only available for the admin user.

The author information menu


BicBucStriim is intended for in-house usage, on a NAS or a similar device without much memory and processing power. On a PC you could simply use the Content Server built into Calibre.

If you are looking for a possibility to publish a larger book collection, or want to publish on the Internet, then calibre2opds might be interesting. It generates a static HTML catalog of a Calibre library that then can be transferred to a web server.



This procedure assumes that there is already a running Apache web server. For other cases please check the Webservers section of the wiki.

The easy way assumes that BicBucStriim lives in a bbs folder right below the web root of your device and can be addressed like http://<your ip>/bbs/:

  1. Download the current installation archive.
  2. Unarchive the downloaded archive below the web server root of your NAS (e.g. “/volume1/web” on a Synology device)
  3. Rename the newly created directory (e.g. BicBucStriim-1.1.0) to “bbs”.
  4. The “data” directory and its contents must be writeable for all. Depending on your method of unarchiving this might be already the case. However, in case you experience access error just use a terminal to correct this: chmod -R ga+w data.
  5. Navigate to the main page: http://<address of your NAS>/bbs/.

A freshly installed BicBucStriim installation will show the login page. The initial login information for the administrator is

After logging in, you will be redirected to the admin section, where you will have to tell the app where your Calibre library is located. Everything else is optional, but you should now also change the admin password.

On some NAS devices, like Synology, you also have to add the path of your Calibre library to the PHP open_basedir variable, if the library is located outside the web folder. For security reasons PHP can only access files in the web folder and in directories mentioned in the open_basedir variable. On a Synology device you can set this in the Control Panel: navigate to ‘Web Services’, ‘PHP Settings’. Add your Calibre library path to the end of open_basedir (and don’t forget to separate it with a colon – ‘:’ – from the other directories).

NOTE (for experienced users): You could also clone the Github repository, however that contains many files that are only useful during development. The installation archives contain onl the necessray files.

Tell BicBucStriim where your Calibre library lives

Everthing can be configured in the admin section

BicBucStriim needs to know where you Calibre library directory resides, the full path to the folder that contains your metadata.db and the book directories. In my case that is /volume1/books so I entered this path in the admin page.

That is all you need to do to get BicBucStriim running. Save and navigate to the start page. The index page should appear.

If the app can’t access the Calibre library it will tell you. BicBucStriim looks for a valid Calibre library directory with file metadata.db at the top. The most common problems are access errors. The app must be able to access the library. In case of problems you should adjust your access restrictions for the Calibre directory.

Optional: Decide if you need login protection

If you need to protect your library set the switch Login required to true. Then only authenticated users will be able to use it. Otherwise switch the login protection off, then everybody can access the library.

Please note: Some ebook readers, like older versions of the Tolino (with firmware version 1.9.4 it worked), can’t download ebooks while the login protection is in effect.

Configure the login protection

Optional: Add more users

If you want to share your library with your family you can add more user accounts for them.

Configure more user accounts in the admin section

Optional: Enable automatic linking with ID templates

Many books contain one or more IDs (see the Calibre field IDs). The most common ID is the ISBN number, others are from publishers or distributors. BicBucStriim detects these IDs and provides a mechanism to use these IDs to create links automatically.

The configuration page ID templates in the admin section lists all IDs in your library. By clicking on individual IDs you can add or edit link templates for the ID. A link template is simly a URL with the special marker %id that will be replaced by the value for that ID found in individual books.

Edit a link template for ISBNs

To provide links for ISBNs in your books you could edit the link template by adding the URL Once this template is saved every book with an ISBN ID will display automatically a clickable ISBN link in the ID links section of a book`s details page.

Book details page with ID link for ISBN

Using this mechanism you can easily provide links to other pages that contain information related to your books.

Optional: Send books via e-mail

If you can’t download books directly you could send them via e-mail to your device. If the Send-To-Kindle feature is activated an e-mail link will appear for each book with a Kindle-compatible format. This feature also needs a valid sender (From) address.

Enable sending to Kindle

BicBucStriim supports multiple transport mechanisms for sending mails. Select the right one for your machine. Only if you want to send mails via SMTP additional configuration is necessary.

Optional: Change the look of thumbnails

By default BicBucStriim generates clipped thumbnails for books. That means it uses the largest possible square in the middle of the book cover. That way we get a small thummbnail that still shows enough details from the original cover image.

However, if you absoloutely need to see a true representation of the cover image, just set the switch Clip thumbnails? to No, and you will get it.

Optional: Change the page size

If you want to see more or less entries (books, authors, tags) per page, just change the number in Page size. Initially BicBucStriim uses 30 items per page.

Optional: Change the app title

If you want to change the title, e.g. to use the name of your library, you can do so by entering a new title in Alternative page title.

Optional: Change book metadata

Enable this setting if you want the book metadata to be updated when a book is downloaded. This is currently only possible for EPUB titles and overwrites the metadata stored in the book with the data stored in Calibre.


BicBucStriim doesn’t care about the protocol used. However, there are applications and devices that had problems when HTTPS was used. Please check



The database structure of version 1.2 is incompatible with previous versions, so exisiting users should start with a fresh install. However, if you have lots of books and don’t want to regenerate all the thumbnails for them:

Notice for users upgrading from v1.2.4 or earlier: since v1.2.5+ issue #104 added the possibility to have multiple admin users. If you have trouble to login as admin, either


If you encounter problems, use the installation test to check your environment. Invoke this test by navigating to http://<NAS address>/bbs/installcheck.php. This test checks for problems that users experienced in the past.

The installation test has two main parts

The environment part (labeled Environment Checks) tests the technical requirements and various sources for errors that appeared in the past. The test results are signalled in traffic light fashion:

The second part, the Calibre library check, simply tests whether your library is accessible by a web application. Many NAS devices restrict the access of web applications to certain directories, a security precaution. So if BicBucStriim can’t load your books, simply enter the directory where your books are stored in the Calibre library check form and test it.

Installation test

For Synology users: if you experience strange errors after installation/upgrade, e.g. blank pages or messages about classes not found, then simply reboot your device or restart the web server (/usr/syno/etc/rc.d/ restart) manually. This helps in most cases.

If the problem doesn’t go away, just let me know.

OPDS catalogs

Starting with version 0.9 BicBucStriim provides OPDS catalogs for reading apps like Stanza or Aldiko. The main entry point for these catalogs is http://.../bbs/opds/.

At this stage the OPDS support provides the usual hierarchy for browsing your library by book title, author, tag or series. Searching is not yet possible.

NOTE: if you are using OPDS via HTTPS to access there could be a problem with the download of images. Aldiko, for example, doesn’t load images with a HTTPS address.


BicBucStriim itself is licensed under the MIT license, for the licenses of the libraries used see the file NOTICE.

(The MIT License)

Copyright (c) 2012-2015 Rainer Volz

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.