This Kivy app is cross-platform, but is intended to run on mobile phones and gather data using their sensors in a platform-specific fashion.
The interpreter for python3.7 (see pyproject.toml for full version) must be installed.
Instead of pip, we use poetry to manage dependencies.
Use pip install poetry to install poetry (or follow its official docs to install it system-wide).
Use poetry install to install python dependencies (poetry will create its own virtualenv if you don't have one activated).
Use pytest to launch unit-tests (its default arguments are in setup.cfg); you might need to add the "src/" directory of this repository to your pythonpath, until a better way to early-setup python paths is found. Use poetry run pytest instead, if poetry created its own virtualenv.
Use the Black formatter to format your python code.
To compile app to Android, we'll use Buildozer and its python-for-android backend (https://buildozer.readthedocs.io/en/latest/).
OBSOLETE AUTOGENERATED README BELOW
A sleek slideshow app that supports swipe gestures.
This Kivy app was generated with Cookiecutter along with @hackebrot's Cookiedozer template.
- Minimal design with flat colors
- Text labels that contain clickable links
- Several slides that can be controlled via swipe gestures
- Settings panel to change the slider transition delay (
<F1>
)
To run "Witness Angel Client" you only need Kivy.
Depending on the features that you want to use, you do require additional libs though.
- pytest - implement readable tests without boilerplate-code
- pytest-cov - generate an
html
coverage report - Sphinx - generate a readable
html
documentation - Buildozer - deploy your app to an Android mobile device
Clone the repository:
$ git clone https://github.com/pakal/witness-angel-client.git
$ cd witness-angel-client
Create a new virtual environment. Given that you are using virtualenvwrapper:
$ mkvirtualenv -a $(pwd) --system-site-packages witness-angel-client
Note
If you prefer to set up a fresh env, feel free to omit the according option. Chances are that you want to use your systems Kivy including all its dependencies such as Cython.
Install the app package in "editable" mode:
$ python setup.py develop
Launch the app via:
$ witness-angel-client
Run the pytest test suite:
$ make test
Generate an html
coverage report and open it:
$ make coverage
Generate Sphinx html
documentation and open it:
$ make docs
Build an android apk with Buildozer:
$ make apk
Deploy the app to your android device with Buildozer:
$ make deploy
Distributed under the terms of the MIT license, "Witness Angel Client" is free and open source software
If you encounter any problems, please file an issue along with a detailed description.