Yet Another Simple Library Of eBooks
I was searching a tool to handle my ebooks stored on small server (Netgear Stora in my case). Calibre is a very powerful but too complex and needs a lots of RAM and CPU. Cops fulfills my needs but still needs a Calibre installation.
So YASLOB : Yet Another Simple Library Of eBooks Constraints :
- can be installed on a small server (PHP 5.1.6)
- does not need lots of dependencies on server side (cannot install anything, because of low space left)
- doesn't need a database, only an XML file for storing data
- doesn't need json_encode() and json_decode() functions (PHP 5.1.6)
- looks professional and responsive design
- can be configured easilly (simple file)
- follows MVC architecture
Requirements :
- upload a new ebook (in PDF format only)
- gets automatically : cover image, title, author, year, number of pages
- add a description, a note by clicking on stars
- add/remove tags easily (with autocomplete)
- list ebooks by date (last 10 added ebooks for example)
- search ebooks by tags and by word in title, author or description
- modify or delete an uploaded ebook
- protect add/edit/delete actions with authentication
- hide access to some ebooks (Not Safe For Kids)
- serve ebooks from a directory outside root web server folder
- check if ebook's name already exists and rename it
Add an ebook | List ebooks |
---|---|
![]() |
![]() |
1 - Download all files on your webserver.
2 - The data folder must be writable by your server. For example :
chown -R www-data:www-data data
chmod 755 data/db/ebooks.xml
3 - Modify BASE_URL parameter in config.php
. For example :
// Base URL
define("BASE_URL", "http://1.2.3.4/yaslob");
4 - Change the admin credentials too
// Base URL
define("ADMIN_LOGIN", "admin");
define("ADMIN_PASSWORD", "p4ssw0rd");
Data format in XML file :
<?xml version="1.0" encoding="UTF-8"?>
<ebooks>
<ebook>
<title>CONTES MERVEILLEUX - Tome I</title>
<author>Jakob et Wilhelm Grimm</author>
<description>Premier tome des célèbres contes des frères Grimm</description>
<year>2005</year>
<pages>197</pages>
<date>2021-04-16 09:21:09</date>
<url>contes-merveilleux-tome-i</url>
<nsfk>false</nsfk>
<note>0</note>
<tags>
<tag>contes</tag>
<tag>merveilleux</tag>
</tags>
</ebook>
</ebooks>
External libraries used (thank you) :