Fork with FAFO patches
Find a file
2020-05-26 14:55:30 +01:00
.gitlab/issue_templates Added basic issue templates 2020-05-22 10:35:21 +01:00
docs Switched to ActionView and PropertyView from decorators 2020-05-26 10:54:21 +01:00
openflexure_microscope Updated version and dependencies 2020-05-26 14:51:34 +01:00
tests Implemented root API v2 routes 2019-11-14 16:33:00 +00:00
.gitattributes Revert "Remove CI file from frame branch" 2020-05-18 09:54:18 +00:00
.gitignore Added .env*/ and pip-wheel-metadata/ 2019-11-01 16:07:01 +00:00
.gitlab-ci.yml Revert "Remove CI file from frame branch" 2020-05-18 09:54:18 +00:00
.gitmodules Revert "Remove CI file from frame branch" 2020-05-18 09:54:18 +00:00
.tarignore Revert "Remove CI file from frame branch" 2020-05-18 09:54:18 +00:00
CONTRIBUTING.md Update CONTRIBUTING.md 2019-05-24 10:47:57 +00:00
LICENSE Add LICENSE 2019-02-19 14:51:33 +00:00
poetry.lock Updated version and dependencies 2020-05-26 14:51:34 +01:00
pyproject.toml Updated version to 2.1.0 stable 2020-05-26 14:55:30 +01:00
README.md Added node installation info 2020-05-26 11:10:20 +01:00
readthedocs.yaml Updated RTD to Py37 2019-09-14 15:58:02 +01:00

OpenFlexure Microscope Software

Quickstart

A general user-guide on setting up your microscope can be found here on our website. This includes basic installation instructions suitable for most users.

Full developer documentation can be found on ReadTheDocs. This includes installing the server in a mode better suited for active development.

Installation

  • git clone --recurse-submodules https://gitlab.com/openflexure/openflexure-microscope-server.git
  • poetry install
  • poetry run build_static

Node installation

  • Note, building the static interface will require a valid Node.js installation
  • To build on a Raspberry Pi:
    • curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
    • sudo apt install nodejs

Distributing

  • mkdir -p dist
  • tar -c --exclude-vcs --exclude-from .tarignore -vzf dist/openflexure-microscope-server.tar.gz .

Build-system

As of 1.0.0b0, we're using Poetry to manage dependencies, build, and distribute the package. All package information and dependencies are found in pyproject.toml, in line with PEP 518. If you're developing this package, make use of poetry.lock to ensure you're using the latest locked dependency list.

Microscope plugins

The Microscope module, and Flask app, both support plugins for extending lower-level functionality not well suited to web API calls. This plugin system is still in fairly early development, and is not yet properly documented. The current documentation can be found here.

Running tests through the PTVSD remote debugger (port 3000)

  • From the openflexure-microscope-software directory, run python3 -m ptvsd --host 0.0.0.0 --port 3000 --wait tests/test_camera.py

Credits

Piexif

The microscope server includes a forked copy of hMatoba's Piexif, licensed under the MIT License.

Video streaming

Based on supporting code for the article video streaming with Flask and its follow-up Flask Video Streaming Revisited.