Skip to content

Commit

Permalink
Some minor updates to the docs
Browse files Browse the repository at this point in the history
  • Loading branch information
jbaiter committed Dec 2, 2014
1 parent e199ded commit a40b4b5
Show file tree
Hide file tree
Showing 3 changed files with 74 additions and 33 deletions.
5 changes: 4 additions & 1 deletion doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,10 @@ Introductory Notes that lay out the general workflow of the application and
explain some of the terminology used across all interfaces. Then, if you want
to install and configure the software yourself, head over to the
:doc:`Installation and Setup guide <setup-other>`. If you are a user of the
spreadpi distribution, use the :doc:`spreadpi guide <setup-spreadpi>`.
spreadpi distribution or plan on using it, use the :doc:`spreadpi guide
<setup-spreadpi>`.

.. TODO: Add buttons like in Sphinx or SKLearn docs to biggest points
.. note::

Expand Down
38 changes: 23 additions & 15 deletions doc/setup-other.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,21 @@ Install requirements
To use some of the included plugins, you might want to install the following
dependencies:

.. TODO: Check with spreadpi/spreadslive
* `chdkptp`_ to use cameras with the CHDK firmware (installed in
`/usr/local/lib/chdkptp`)
* An up-to date version of ScanTailor-enhanced_
* pdfbeads_
* djvubind_
* PySide_ (available as `python-pyside` for Debian and Ubuntu)
* libgphoto2_

.. _pip: http://www.pip-installer.org
.. _chdkptp: https://www.assembla.com/spaces/chdkptp/wiki
.. _ScanTailor-enhanced: http://sourceforge.net/p/scantailor/code/ci/enhanced/tree/
.. _pdfbeads: http://rubygems.org/gems/pdfbeads
.. _djvubind: http://code.google.com/p/djvubind/
.. _PySide: http://pyside.org
.. _libgphoto2: http://www.gphoto.org

Installing the core from PyPi
-----------------------------
Expand All @@ -41,22 +41,29 @@ This will grab all Python dependencies for the selected plugins::

Adjust the list of plugins as needed.

Installing from GitHub
----------------------
Like from PyPi, only using the development version from GitHub (might break,
use with caution!)::
Installing a nightly build
--------------------------
Like from PyPi, only using the latest development version (might break, use
with caution!)::

$ sudo pip install git+git://github.com/DIYBookScanner/spreads.git@master
$ sudo pip install http://buildbot.diybookscanner.org/nightly/spreads-latest.tar.gz


Configuration
=============

Initial configuration
---------------------
To perform the initial configuration, launch the `configure` subcommand::
To perform the initial configuration, launch the either the `configure`
subcommand or its graphical counterpart, `guiconfigure`::

$ spread configure
# or
$ spread guiconfigure

The following instructions are mostly target at users of the CLI configuration
interface, but all of the available settings are also equally available from
the GUI and should be pretty self-explanatory.

You will be asked to select a device driver and some plugins. Next, configure
the order in which your postprocessing plugins should be invoked. Think of
Expand Down Expand Up @@ -95,13 +102,14 @@ folder in your home directory.

Configuration file
------------------
Upon first launch, *spreads* writes a configuration file to
`~/.config/spreads/config.yaml`. In it, you can change all of the available
settings to your liking. The configuration options are the same ones that
you can set on the command-line, so just call `spreads <command> --help`
to view the documentation. Command-line flags that begin with `--no-...`
should be entered without the `no` prefix and have `yes` or `no` as their
value.
*spreads* writes its configuration file to `~/.config/spreads/config.yaml`. In
it, you can change all of the available settings to your liking. The
configuration options are the same ones that you can set on the command-line,
so just call `spreads <command> --help` to view the documentation. Command-line
flags that begin with `--no-...` should be entered without the `no` prefix and
have `yes` or `no` as their value.

Here is an example that demonstrates the general layout:

.. code-block:: yaml
Expand Down
64 changes: 47 additions & 17 deletions doc/web.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,36 @@ You can launch the web interface with its subcommand::

$ spread web [OPTIONS]

This will serve the spreads web interface and its RESTish-API on port 5000
for the whole network. There are a number of options with which you can
This will serve the spreads web interface and its RESTish-API for the whole
network. There are a number of options available:

.. option:: --port <int>

.. option:: --database <path>
Port that the web application is listening on. By default this is `5000`

Location of workflow database, by default `~/.config/spreads/workflows.db`
.. option:: --mode <full/scanner/processor>

Mode to run the web plugin in. `scanner` only exposes functionality that
is needed for scanning, while `processor` only exposes functionality that
is needed for postprocessing and output generation. `full` exposes all
available functionality.
Instances of spreads running in `scanner` mode can transfer their workflows
to other instances on the network that run in `processor` mode and let
them take care of the postprocessing and output generation.

.. option:: --postprocessing-server <address>

Select a default postprocesisng server to user. This is only useful if
the web plugin is running in `scanner` mode and the user is planning to
transfer workflows to another spreads instance on the network (see above).
This configures a default address for such a server that is always shown.

.. option:: --standalone-device

Enable standalone mode. This option can be used for devices that are
dedicated to scanning (e.g. a RaspberryPi that runs spreads and nothing
else). At the moment the only additional feature it enables is the ability
to shutdown the device from the web interface and REST API.
else). At the moment the only additional features it enables is the ability
to shutdown and reboot the device from the web interface and REST API.

.. option:: --debug

Expand All @@ -57,35 +73,49 @@ Interface
You can connect to the interface by opening your browser on an address that
looks like this::

http://<host-ip-address>:5000
http://<host-ip-address>:<web-port>

If you are running spreads in your local machine, using `localhost` or
`127.0.0.1` for the IP address will be enough. If you are running it on a
remote machine, you will have to find out its IP address. When you are
using CHDK cameras and have them turned on when you launch spreads, their
displays will show the IP address of the computer they are connected to.
The *web-port* is by default configured to be `5000`, though this can
be configured.

The **initial screen** will list all previously created workflows with a small
preview image and some information on their status. On clicking one of the
workflows, you will be taken to its details page where you can view all
of the images and see more information on it. You can also choose to download
a ZIP file with the workflow, containing all images and a configuration file.
workflows, you will be taken to its details page where you can view all of the
images and see more information on it. You can also choose to download a ZIP or
TAR file with the workflow, containing all images and a configuration file.

.. TODO: workflow list screenshot
From the navigation bar, you can choose to **create a new workflow**. The only
setting you absolutely have to enter is the workflow name. You can also change
driver and plugin settings for this workflow by selecting either one from the
dropdown menu. When you are done, you can submit the workflow and the
application will take you to the capture screen.
metadata you absolutely have to enter is the workflow name. Note that when you
enter a name, you will be offered a selection of ISBN records that might match
your title. If you select one of these, the rest of the fields will be filled
out automatically.

You can also change driver and plugin settings for this workflow by selecting
either one from the dropdown menu. For a reference on what the various options
mean, please consult the documentation of the repsective plugin or driver.
When you are done, you can submit the workflow and the application will take
you to the capture screen.

.. TODO: workflow creation screenshot
On the **capture screen**, you can see two small review images with which
you can verify that the last capture went well. Trigger a new capture by
clicking the appropriate button and you will see the images update.
If you spotted an error, you can click the *Rektake* button, which will discard
the last capture and trigger a new one. Once you are done, use the *finish*
button.

.. TODO: Cropping
.. TODO: On-the-fly configuration editing
If you spotted an error, you can click the *Retake* button, which will discard
the last capture and trigger a new one. Note that the new capture will be
triggered *immediately*, there is no need to use the capture button.
Once you are done, use the *finish* button.

.. TODO: Capture interface screenshot

0 comments on commit a40b4b5

Please sign in to comment.