mirror of
https://github.com/th3r00t/pyShelf.git
synced 2026-04-28 01:59:35 -04:00
Cleaned up the README
This commit is contained in:
34
README.md
vendored
34
README.md
vendored
@@ -1,21 +1,23 @@
|
|||||||
# pyShelf 0.3.0
|
# pyShelf 0.3.0
|
||||||
|
|
||||||
<p align="center"><b>A simple terminal based ebook server</b></p>
|
<p align="center"><b>Terminal based ebook server. Open source & Lightweight.</b></p>
|
||||||
|
|
||||||
Frustrated with Calibre being my only option for hosting my eBook collection, I have decided to spin up my own.
|
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.
|
||||||
|
|
||||||
Calibre is a great organizational tool for your books, however not having a terminal based option for running and maintaining
|
## Current Features
|
||||||
a server is cumbersome when running on a headless server.
|
* Recursive Scanning
|
||||||
Calibre does have a console based server solution, However there is currently no way to create, and manage your library in a headless enviroment.
|
* Fast database access
|
||||||
|
* Django based frontend
|
||||||
|
* Basic seaching via a SearchVector of author, title, & file_name fields.
|
||||||
|
|
||||||
Thus I am creating pyShelf and I hope to be able to provide all the functionality required to organize and host all your ebooks.
|
## Currently Supported Formats
|
||||||
|
* epub
|
||||||
|
|
||||||
|
## Installation Example
|
||||||
<a href="https://asciinema.org/a/M739CljirFAf9nzeNyNO0113a" target="_blank"><img src="https://asciinema.org/a/M739CljirFAf9nzeNyNO0113a.svg" /></a>
|
<a href="https://asciinema.org/a/M739CljirFAf9nzeNyNO0113a" target="_blank"><img src="https://asciinema.org/a/M739CljirFAf9nzeNyNO0113a.svg" /></a>
|
||||||
* In addition to the above steps you must now also make the requisite changes in config.json to reflect the connection to your postgresql server
|
* In addition to the above steps you must now also make the requisite changes in config.json to reflect the connection to your postgresql server
|
||||||
<img src="https://raw.githubusercontent.com/th3r00t/pyShelf/development/src/interface/static/img/pyShelf_frontend_0_1_0.png" alt="Server Frontend" align="center" />
|
<img src="https://raw.githubusercontent.com/th3r00t/pyShelf/development/src/interface/static/img/pyShelf_frontend_0_1_0.png" alt="Server Frontend" align="center" />
|
||||||
|
|
||||||
I am open to and hoping for community help in the design and execution of this program.
|
|
||||||
|
|
||||||
## 0.3.0 Patch Notes.
|
## 0.3.0 Patch Notes.
|
||||||
### "And now we search."
|
### "And now we search."
|
||||||
|
|
||||||
@@ -41,23 +43,19 @@ There is one new requirement
|
|||||||
* Before advancing version numbers be sure to set PROJECT_NUMBER in doxygen.conf accordingly.
|
* Before advancing version numbers be sure to set PROJECT_NUMBER in doxygen.conf accordingly.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
All pyShelf configuration is done in config.json.
|
|
||||||
* Be sure to set the path to your library, and database connection details.
|
|
||||||
|
|
||||||
### Nginx configuration
|
### Nginx
|
||||||
I have included a default nginx config file pyshelf_nginx.conf. This file should be sufficient to get you up and running. You are required to change the location alias's to reflect your pyshelf install folder leaving everything after /frontend intact.
|
Included is a default nginx config file {pyshelf_nginx.conf}. This file should be sufficient to get you up and running. You are required to change the location alias's to reflect your pyshelf install folder leaving everything after /frontend intact.
|
||||||
|
|
||||||
Further resources for nginx setup may be found @ [This nginx, django, & uwsgi, guide](https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html)
|
Further resources for nginx setup may be found @ [This nginx, django, & uwsgi, guide](https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html)
|
||||||
|
|
||||||
### uwsgi configuration
|
### uwsgi
|
||||||
Inside uwsgi.ini you should make changes to reflect your install directory, and the port you wish uwsgi to listen on. Alternativly you can make the requisite changes to listen on a socket instead. This change would also require a change to the pyshelf_nginx.conf file as well.
|
Inside uwsgi.ini you should make changes to reflect your install directory, and the port you wish uwsgi to listen on. Alternativly you can make the requisite changes to listen on a socket instead. This change would also require a change to the pyshelf_nginx.conf file as well.
|
||||||
|
|
||||||
### pyShelf configuration
|
### pyShelf
|
||||||
User configuration is contained within config.json in the project root. The only currently required configuration is to set book_path to the location of your books.
|
User configuration is contained within config.json in the project root. You must set book_path to the location of your books, and change the database connection details to match your environment.
|
||||||
|
|
||||||
## Current Features
|
|
||||||
Currently pyShelf will recursively scan your collection, extract and store some metadata in the sqlite database. It will also provide you with a web based frontend to view and download your books. The search feature is currently in its infancy, and by default searches the author, title, & file_name fields. There is no way to change this in the program right now.
|
|
||||||
|
|
||||||
|
## Misc
|
||||||
Django has been implemented to power the frontend experience, and web based database maintenance. A properly configured web server is required for hosting the frontend, and a PostgreSQL server for the database, configuration of these servers is outside of the scope of this readme.
|
Django has been implemented to power the frontend experience, and web based database maintenance. A properly configured web server is required for hosting the frontend, and a PostgreSQL server for the database, configuration of these servers is outside of the scope of this readme.
|
||||||
|
|
||||||
Running via the Django test server might be possible, albeit not recomended.
|
Running via the Django test server might be possible, albeit not recomended.
|
||||||
|
|||||||
Reference in New Issue
Block a user