Python module, and Flask-based web API, to run the OpenFlexure Microscope.
OpenFlexure Microscope Software
A general guide on setting up your microscope can be found here on our website.
curl -LSs get.openflexure.org/microscope |sudo bash
- Follow on-screen prompts
- (Recommended) create a virtual environment
pip3 install virtualenv
python3 -m virtualenv ~/.openflexure/envmicroscope
- Activate with
- Install non-python dependencies with
sudo apt-get install libatlas-base-dev libjasper-dev libjpeg-dev
- Users: Install module by running
pip install openflexure-microscope
- Developers: Install Poetry, clone this repo, and
poetry installfrom inside the repo.
Running the web API in Gunicorn (port 5000)
- Ensure Gunicorn is installed to the current environment (
pip install gunicorn)
gunicorn --threads 5 --workers 1 --graceful-timeout 3 --bind 0.0.0.0:5000 openflexure_microscope.api.app:app
The Flask app serves a (reasonably) RESTful web API. For most user-facing functionality, this is the preferred interface. API documentation, with example requests, is available here.
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.
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
The microscope server includes a forked copy of hMatoba's Piexif, licensed under the MIT License.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash||File type||Python version||Upload date|
|openflexure_microscope-1.0.0-py3-none-any.whl (103.1 kB) View hashes||Wheel||py3|
|openflexure_microscope-1.0.0.tar.gz (82.6 kB) View hashes||Source||None|
Hashes for openflexure_microscope-1.0.0-py3-none-any.whl
Hashes for openflexure_microscope-1.0.0.tar.gz