Requirements
------------
-* `Python 2.6+ <http://python.org>`_
-* Everyting from the ``requirements.txt`` file
+* `Python 3.5-3.7 <http://python.org>`_
+* Python requiremets: ``pip install -r requirements/requirements.txt``
* a library for your database of choice
- (see `DBs supported by Django <http://docs.djangoproject.com/en/dev/topics/install/#get-your-database-running>`_)
-* `puLucene <https://github.com/fnp/pylucene/>`_ for search
-* Librarian dependencies, see lib/librarian/README.md
-
-
-Installation
-------------
-Installing database::
-
- cd wolnelektury
- ./manage.py syncdb
- ./manage.py migrate
+ (see `DBs supported by Django <https://docs.djangoproject.com/en/dev/topics/install/#get-your-database-running>`_)
+* `Sass <http://sass-lang.com>`_ >= 3.2 for parsing SCSS stylesheets
+* Librarian has more dependencies if you want to build PDF and MOBI files,
+ see lib/librarian/README.md
+* `Solr <https://lucene.apache.org/solr/>`_ server if you want to search
Running
-------
+Set up the database with::
+
+ ./manage.py migrate
-You can run the server with::
+Run the dev server with::
./manage.py runserver
-If you want to run lengthy tasks (like generating e-book files) in a seperate
-Celery process (this is the default), you'll also need to run:
+Some tasks (like generating e-books) run in a seperate
+Celery process by default, so you'll also need to run::
- ./manage.py celeryd --loglevel=INFO
+ celery -A wolnelektury worker --loglevel=INFO
-If you don't want to run a separate Celery daemon, make sure you set this
-option in your ``localsettings.py``::
+Or, if you don't want to run a separate Celery daemon, set this
+in your ``localsettings.py``::
CELERY_ALWAYS_EAGER = True
Deployment
----------
-Setup your server in fabfile.py and do::
- fab <your_server_name> setup
+TODO
+
-Aside from uploading a current (git's HEAD) version of the app this will also
-download all dependencies into a `virtualenv <http://www.virtualenv.org>`_,
-create a VHost and WSGI files for running with Apache and mod_wsgi, and
-a celery config file for `supervisord <http://supervisord.org/>`_.
+Publishing books
+----------------
-To deploy a new version into an existing setup, do:
+Books are represented as XML files.
+You can import XML files from a directory by running::
- fab <your_server_name> deploy
+ ./manage.py importbooks ../books
-This will also check for new dependencied, migrate your app and restart the
-WSGI server and Celery under supervisord.
+Or you can publish a single XML by using publishing form in admin,
+or the publishing API.