# pyShelf 0.4.0
Terminal based ebook server. Open source & Lightweight.
[](https://ko-fi.com/D1D51ALZH) Having used Calibre for hosting my eBook collection in the past, I found myself frustrated having to install X on my server, or manage my library externally, Thus I have decided to spin up my own. ## Current Features * Custom Installer * Recursive Scanning * Fast database access * Django based frontend * Basic seaching via a SearchVector of author, title, & file_name fields. ## Currently Supported Formats * epub ## Installation Example
## Further Installation & Support Information
* [SUPPORT.md](https://github.com/th3r00t/pyShelf/blob/development/.github/SUPPORT.md)
## 0.3.0 Patch Notes.
### "And now we search."
Just about all the changes in this release were in some way related to implementing the search features.
There is one new requirement
* Requirement: **PostgreSQL**
*This is what I believe to be the last infrastructure requirement, users with larger libraries should notice an increase in access speed.*
* Feature: **Searching**
*The search feature is now implemented. In its current incarnation you will by default search the author, title, & file_name fields. More defined search options will be available in future releases. Searches are paginated @ 20 results per page.*
* Discord [https://discord.gg/H9TbNJS](https://discord.gg/H9TbNJS)
* IRC find us on freenode.net @ #pyshelf
## Development
* [`pre-commit`](https://pre-commit.com/)
_Before developing, run `pre-commit install` See the [documentation](https://pre-commit.com/) for more information._
* ['Doxygen'](http://www.doxygen.nl/)
_Any changes to source should be documented and have run doxygen doxygen.conf prior to commiting._
* ['sem-ver'](https://semver.org)
_Before advancing version numbers be sure to set PROJECT_NUMBER in doxygen.conf accordingly._
## Configuration
All configuration is now handled by the installer.
Running via the Django test server might be possible, albeit not recomended.
## In Progress
* Organizational tools.
* Docker image for those who need it.
* Improved cover image storage, and acquisition.
## Future Goals
* Support for other book formats (Currently only supporting EPUBS)
* Terminal Backend for catalogue maintenance
* Calculate page count from total characters
* (Thanks to @Fireblend for the idea) https://github.com/th3r00t/pyShelf/issues/3
* Reader for easy integration with your catalogue