omero-gallery


Nameomero-gallery JSON
Version 3.4.3 PyPI version JSON
download
home_pagehttps://github.com/ome/omero-gallery
SummaryA Python plugin for OMERO.web
upload_time2023-06-15 13:32:59
maintainer
docs_urlNone
authorThe Open Microscopy Team
requires_python>=3
licenseAGPL-3.0
keywords omero.web plugin
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://github.com/ome/omero-gallery/workflows/OMERO/badge.svg
    :target: https://github.com/ome/omero-gallery/actions

.. image:: https://badge.fury.io/py/omero-gallery.svg
    :target: https://badge.fury.io/py/omero-gallery

OMERO.gallery
=============

This is an OMERO.web plugin (Django app) that provides a 'gallery' view of images in OMERO, ideal for public browsing without editing.

Also see `SUPPORT.md <https://github.com/ome/omero-gallery/blob/master/SUPPORT.md>`_

Requirements
============

* OMERO.web 5.6.0 or newer.

Installing from PyPI
====================

This section assumes that an OMERO.web is already installed.

Install the app using `pip <https://pip.pypa.io/en/stable/>`_:

::

    $ pip install -U omero-gallery

Add gallery custom app to your installed web apps:

::

    $ omero config append omero.web.apps '"omero_gallery"'

Now restart OMERO.web as normal.


OMERO.gallery overview
======================

This application supports 2 alternative views of your data in OMERO, which can
be chosen and customised via config settings:

* Default UI (no config): Browse `Group > Project > Dataset > Image`
* Categories UI: Show categories of interest. Allow filtering by map annotations.

For both views, public access can be enabled
`as described here <https://docs.openmicroscopy.org/latest/omero/sysadmins/public.html>`_,
otherwise users will see the standard web login screen.
Once logged-in (as a regular user or public user), the data displayed will
include all data accessible to that user via the normal OMERO permissions.


Default UI
----------

This view supports minimal functionality required for browsing the hierarchy
from Groups -> Projects -> Datasets -> Images. Screen/Plate/Well data is
not supported in this UI.

The home page will display all the available groups that the user can access, with a random
thumbnail from each group. The number of Projects, Datasets and Images within each group
will also be displayed.

.. image:: https://ome.github.io/omero-gallery/images/gallery.png


On browsing into a group, the Projects and 'orphaned' Datasets will be shown in a similar layout.

.. image:: https://ome.github.io/omero-gallery/images/show_group.png

Projects are shown with 5 thumbnails from each Dataset. Clicking 'All Images' will load all the remaining thumbnails
from a chosen Dataset (or you can browse to the Dataset itself by clicking the Dataset name link).

.. image:: https://ome.github.io/omero-gallery/images/show_project.png

Clicking a thumbnail will take you directly to the full image viewer.

.. image:: https://ome.github.io/omero-gallery/images/webgateway_viewer.png


Categories UI
-------------

This view was originally developed for use in the IDR and can be seen at
https://idr.openmicroscopy.org/. In the IDR, a "Study" is a Project or Screen
and they are annotated with Key-Value data in the form of Map Annotations,
for example ``Study Type: 3D-tracking``.
The UI supports several features based on these Key-Value attributes:

* Home page shows 'Categories' that are defined by queries on Map Annotations.
* Filter studies by Map Annotations.

If Images are also annotated with Map Annotations and
https://github.com/ome/omero-mapr/ is installed then you can:

* Find Studies containing Images that match queries on their Map Annotations.


Configuring the Categories UI
-----------------------------

**omero.web.gallery.category_queries:**
To enable the Categories UI, you must set ``omero.web.gallery.category_queries``.
If this is not set, you will see the Default UI shown above and the other
settings described below will be ignored.

Each Category is defined by a display ``label``, a ``query`` to select the Projects
and Screens and an ``index`` to specify the order they appear on the page.
Most of the examples below are used in the IDR. You can view the Categories
at https://idr.openmicroscopy.org/ and see the query for each as a tooltip on
the label of each category.

In the simplest case, if you do not have Map Annotations on Studies (Projects and
Screens), you can simply sort by Name. This example defines
a Category: "All Studies" to show the first 50 studies by Name::

    $ omero config set omero.web.gallery.category_queries '{
      "all":{"label":"All Studies", "index":0, "query":"FIRST50:Name"}
      }'

Other categories are defined by queries on Map Annotations. For example, to
show all Studies that have Key:Value of ``Study Type: 3D-tracking``::

    $ omero config set omero.web.gallery.category_queries '{
      "tracking":{"label":"3D tracking", "index":0, "query":"Study Type: 3D-tracking"}
      }'

Queries can use the ``AND`` and ``OR`` keywords to combine queries::

    $ omero config set omero.web.gallery.category_queries '{
      "time":{"label":"Time-lapse imaging", "index":0, "query":"Study Type: 3D-tracking OR Study Type: time"},
      "screens":{"label":"High-content screening (human)", "index":1, "query":"Organism:Homo sapiens AND Study Type:high content screen"}
      }'

**omero.web.gallery.filter_keys:**
If this is configured then the gallery will allow filtering of Screens and
Projects by Key:Value pairs linked to them, or use ``Name`` to filter by Name
or ``Group`` to filter by Group.
This list defines which Keys the user can choose in the UI.
On selecting a Key, the user will be able to filter by Values typed into
an auto-complete field.

Each item is a simple string (matching the Key) or an object with a ``label``
and ``value``, where ``value`` matches the Key. An example based on IDR::

    $ omero config set omero.web.gallery.filter_keys '[
        "Name",
        "Imaging Method",
        "Organism",
        {"label": "Publication Authors", "value": "Authors"}
    ]'


**omero.web.gallery.title:**
Sets the html page ```<title>title</title>``` for gallery pages.


**omero.web.gallery.top_left_logo:**
This setting can be used to replace the 'OMERO' logo at the top-left of the
page with an image hosted elsewhere (png, jpeg or svg). It will be displayed
with height of 33 pixels and maximum width of 200 pixels::

    $ omero config set omero.web.gallery.top_left_logo '{"src": "https://www.openmicroscopy.org/img/logos/ome-main-nav.svg"}'


**omero.web.gallery.heading:**
Replace the "Welcome to OMERO.gallery" heading on the home page.


**omero.web.gallery.top_right_links:**
This specifies a list of links as {'text':'Text','href':'www.url'} for the
top-right of each page. If a link contains 'submenu':[ ] with more links,
these will be shown in a dropdown menu::

    $ omero config set omero.web.gallery.top_right_links '[
        {"text":"OME", "href":"https://www.openmicroscopy.org/"}
    ]'

**omero.web.gallery.favicon:**
Set a URL to a favicon to use for the browser.

**omero.web.gallery.subheading_html:**
Set some HTML to show as a sub-heading on the home page, within a <p> tag::

    $ omero config set omero.web.gallery.subheading_html "This is an image gallery using <b>OMERO</b>."

**omero.web.gallery.footer_html:**
Set some HTML to show as a footer on each page::

    $ omero config set omero.web.gallery.footer_html "<a href='https://blog.openmicroscopy.org/'>Blog</a>"

**omero.web.gallery.study_short_name:**
This specifies a short name for Screen or Project to show above the study Image
in the categories or search page, instead of the default 'Project: 123'.
The list allows us to try multiple methods, using the first that works.
Each object in the list has e.g. {'key': 'Name'}. The 'key' can be Name,
Description or the key for a Key:Value pair on the object.
If a 'regex' and 'template' are specified, we try name.replace(regex, template).
In this example, we check for a Key:Value named "Title". If that is not found,
then we use a regex based on the object's Name. This example is from the IDR,
where we want to create a short name like ``idr0001A`` from a Name
like: ``idr0001-graml-sysgro/screenA``::

    $ omero config set omero.web.gallery.study_short_name '[
        {"key":"Title"},
        {"key":"Name", "regex": "^(.*?)-.*?(.)$", "template": "$1$2"},
    ]'

Release process
---------------

- review and update the [CHANGELOG](https://github.com/ome/omero-gallery/blob/master/CHANGELOG.md)
- run ``bumpversion release`` to remove the dev suffix and create a signed tag
- run ``bumpversion --no-tag patch`` to bump the version to the next dev suffix
- push the newly created tag and ``master`` to ``origin``. e.g. ``git push origin master v3.3.3``
- the Travis CI build for the tag includes a PyPI deployment step, so no need to deploy on PyPi manually

License
-------

OMERO.gallery is released under the AGPL.

Copyright
---------

2016-2021, The Open Microscopy Environment



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ome/omero-gallery",
    "name": "omero-gallery",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3",
    "maintainer_email": "",
    "keywords": "OMERO.web,plugin",
    "author": "The Open Microscopy Team",
    "author_email": "ome-devel@lists.openmicroscopy.org.uk",
    "download_url": "https://files.pythonhosted.org/packages/34/b5/3f98ff476c6a479c52a2bb6c5838d2a628792f113b5ea306030c3c9ea681/omero-gallery-3.4.3.tar.gz",
    "platform": null,
    "description": ".. image:: https://github.com/ome/omero-gallery/workflows/OMERO/badge.svg\n    :target: https://github.com/ome/omero-gallery/actions\n\n.. image:: https://badge.fury.io/py/omero-gallery.svg\n    :target: https://badge.fury.io/py/omero-gallery\n\nOMERO.gallery\n=============\n\nThis is an OMERO.web plugin (Django app) that provides a 'gallery' view of images in OMERO, ideal for public browsing without editing.\n\nAlso see `SUPPORT.md <https://github.com/ome/omero-gallery/blob/master/SUPPORT.md>`_\n\nRequirements\n============\n\n* OMERO.web 5.6.0 or newer.\n\nInstalling from PyPI\n====================\n\nThis section assumes that an OMERO.web is already installed.\n\nInstall the app using `pip <https://pip.pypa.io/en/stable/>`_:\n\n::\n\n    $ pip install -U omero-gallery\n\nAdd gallery custom app to your installed web apps:\n\n::\n\n    $ omero config append omero.web.apps '\"omero_gallery\"'\n\nNow restart OMERO.web as normal.\n\n\nOMERO.gallery overview\n======================\n\nThis application supports 2 alternative views of your data in OMERO, which can\nbe chosen and customised via config settings:\n\n* Default UI (no config): Browse `Group > Project > Dataset > Image`\n* Categories UI: Show categories of interest. Allow filtering by map annotations.\n\nFor both views, public access can be enabled\n`as described here <https://docs.openmicroscopy.org/latest/omero/sysadmins/public.html>`_,\notherwise users will see the standard web login screen.\nOnce logged-in (as a regular user or public user), the data displayed will\ninclude all data accessible to that user via the normal OMERO permissions.\n\n\nDefault UI\n----------\n\nThis view supports minimal functionality required for browsing the hierarchy\nfrom Groups -> Projects -> Datasets -> Images. Screen/Plate/Well data is\nnot supported in this UI.\n\nThe home page will display all the available groups that the user can access, with a random\nthumbnail from each group. The number of Projects, Datasets and Images within each group\nwill also be displayed.\n\n.. image:: https://ome.github.io/omero-gallery/images/gallery.png\n\n\nOn browsing into a group, the Projects and 'orphaned' Datasets will be shown in a similar layout.\n\n.. image:: https://ome.github.io/omero-gallery/images/show_group.png\n\nProjects are shown with 5 thumbnails from each Dataset. Clicking 'All Images' will load all the remaining thumbnails\nfrom a chosen Dataset (or you can browse to the Dataset itself by clicking the Dataset name link).\n\n.. image:: https://ome.github.io/omero-gallery/images/show_project.png\n\nClicking a thumbnail will take you directly to the full image viewer.\n\n.. image:: https://ome.github.io/omero-gallery/images/webgateway_viewer.png\n\n\nCategories UI\n-------------\n\nThis view was originally developed for use in the IDR and can be seen at\nhttps://idr.openmicroscopy.org/. In the IDR, a \"Study\" is a Project or Screen\nand they are annotated with Key-Value data in the form of Map Annotations,\nfor example ``Study Type: 3D-tracking``.\nThe UI supports several features based on these Key-Value attributes:\n\n* Home page shows 'Categories' that are defined by queries on Map Annotations.\n* Filter studies by Map Annotations.\n\nIf Images are also annotated with Map Annotations and\nhttps://github.com/ome/omero-mapr/ is installed then you can:\n\n* Find Studies containing Images that match queries on their Map Annotations.\n\n\nConfiguring the Categories UI\n-----------------------------\n\n**omero.web.gallery.category_queries:**\nTo enable the Categories UI, you must set ``omero.web.gallery.category_queries``.\nIf this is not set, you will see the Default UI shown above and the other\nsettings described below will be ignored.\n\nEach Category is defined by a display ``label``, a ``query`` to select the Projects\nand Screens and an ``index`` to specify the order they appear on the page.\nMost of the examples below are used in the IDR. You can view the Categories\nat https://idr.openmicroscopy.org/ and see the query for each as a tooltip on\nthe label of each category.\n\nIn the simplest case, if you do not have Map Annotations on Studies (Projects and\nScreens), you can simply sort by Name. This example defines\na Category: \"All Studies\" to show the first 50 studies by Name::\n\n    $ omero config set omero.web.gallery.category_queries '{\n      \"all\":{\"label\":\"All Studies\", \"index\":0, \"query\":\"FIRST50:Name\"}\n      }'\n\nOther categories are defined by queries on Map Annotations. For example, to\nshow all Studies that have Key:Value of ``Study Type: 3D-tracking``::\n\n    $ omero config set omero.web.gallery.category_queries '{\n      \"tracking\":{\"label\":\"3D tracking\", \"index\":0, \"query\":\"Study Type: 3D-tracking\"}\n      }'\n\nQueries can use the ``AND`` and ``OR`` keywords to combine queries::\n\n    $ omero config set omero.web.gallery.category_queries '{\n      \"time\":{\"label\":\"Time-lapse imaging\", \"index\":0, \"query\":\"Study Type: 3D-tracking OR Study Type: time\"},\n      \"screens\":{\"label\":\"High-content screening (human)\", \"index\":1, \"query\":\"Organism:Homo sapiens AND Study Type:high content screen\"}\n      }'\n\n**omero.web.gallery.filter_keys:**\nIf this is configured then the gallery will allow filtering of Screens and\nProjects by Key:Value pairs linked to them, or use ``Name`` to filter by Name\nor ``Group`` to filter by Group.\nThis list defines which Keys the user can choose in the UI.\nOn selecting a Key, the user will be able to filter by Values typed into\nan auto-complete field.\n\nEach item is a simple string (matching the Key) or an object with a ``label``\nand ``value``, where ``value`` matches the Key. An example based on IDR::\n\n    $ omero config set omero.web.gallery.filter_keys '[\n        \"Name\",\n        \"Imaging Method\",\n        \"Organism\",\n        {\"label\": \"Publication Authors\", \"value\": \"Authors\"}\n    ]'\n\n\n**omero.web.gallery.title:**\nSets the html page ```<title>title</title>``` for gallery pages.\n\n\n**omero.web.gallery.top_left_logo:**\nThis setting can be used to replace the 'OMERO' logo at the top-left of the\npage with an image hosted elsewhere (png, jpeg or svg). It will be displayed\nwith height of 33 pixels and maximum width of 200 pixels::\n\n    $ omero config set omero.web.gallery.top_left_logo '{\"src\": \"https://www.openmicroscopy.org/img/logos/ome-main-nav.svg\"}'\n\n\n**omero.web.gallery.heading:**\nReplace the \"Welcome to OMERO.gallery\" heading on the home page.\n\n\n**omero.web.gallery.top_right_links:**\nThis specifies a list of links as {'text':'Text','href':'www.url'} for the\ntop-right of each page. If a link contains 'submenu':[ ] with more links,\nthese will be shown in a dropdown menu::\n\n    $ omero config set omero.web.gallery.top_right_links '[\n        {\"text\":\"OME\", \"href\":\"https://www.openmicroscopy.org/\"}\n    ]'\n\n**omero.web.gallery.favicon:**\nSet a URL to a favicon to use for the browser.\n\n**omero.web.gallery.subheading_html:**\nSet some HTML to show as a sub-heading on the home page, within a <p> tag::\n\n    $ omero config set omero.web.gallery.subheading_html \"This is an image gallery using <b>OMERO</b>.\"\n\n**omero.web.gallery.footer_html:**\nSet some HTML to show as a footer on each page::\n\n    $ omero config set omero.web.gallery.footer_html \"<a href='https://blog.openmicroscopy.org/'>Blog</a>\"\n\n**omero.web.gallery.study_short_name:**\nThis specifies a short name for Screen or Project to show above the study Image\nin the categories or search page, instead of the default 'Project: 123'.\nThe list allows us to try multiple methods, using the first that works.\nEach object in the list has e.g. {'key': 'Name'}. The 'key' can be Name,\nDescription or the key for a Key:Value pair on the object.\nIf a 'regex' and 'template' are specified, we try name.replace(regex, template).\nIn this example, we check for a Key:Value named \"Title\". If that is not found,\nthen we use a regex based on the object's Name. This example is from the IDR,\nwhere we want to create a short name like ``idr0001A`` from a Name\nlike: ``idr0001-graml-sysgro/screenA``::\n\n    $ omero config set omero.web.gallery.study_short_name '[\n        {\"key\":\"Title\"},\n        {\"key\":\"Name\", \"regex\": \"^(.*?)-.*?(.)$\", \"template\": \"$1$2\"},\n    ]'\n\nRelease process\n---------------\n\n- review and update the [CHANGELOG](https://github.com/ome/omero-gallery/blob/master/CHANGELOG.md)\n- run ``bumpversion release`` to remove the dev suffix and create a signed tag\n- run ``bumpversion --no-tag patch`` to bump the version to the next dev suffix\n- push the newly created tag and ``master`` to ``origin``. e.g. ``git push origin master v3.3.3``\n- the Travis CI build for the tag includes a PyPI deployment step, so no need to deploy on PyPi manually\n\nLicense\n-------\n\nOMERO.gallery is released under the AGPL.\n\nCopyright\n---------\n\n2016-2021, The Open Microscopy Environment\n\n\n",
    "bugtrack_url": null,
    "license": "AGPL-3.0",
    "summary": "A Python plugin for OMERO.web",
    "version": "3.4.3",
    "project_urls": {
        "Download": "https://github.com/ome/omero-gallery/archive/v3.4.3.tar.gz",
        "Homepage": "https://github.com/ome/omero-gallery"
    },
    "split_keywords": [
        "omero.web",
        "plugin"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b1fbd5d356bcc8326e573d275380df4b089bb29030305372a1586fd2d599ff16",
                "md5": "02f283f61788e5ba1f4fc6a70f9423eb",
                "sha256": "a211539e786f5253fa11aca9806fa4a1db82abba994f8e86514d1ee289f126a2"
            },
            "downloads": -1,
            "filename": "omero_gallery-3.4.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "02f283f61788e5ba1f4fc6a70f9423eb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3",
            "size": 307889,
            "upload_time": "2023-06-15T13:32:57",
            "upload_time_iso_8601": "2023-06-15T13:32:57.407442Z",
            "url": "https://files.pythonhosted.org/packages/b1/fb/d5d356bcc8326e573d275380df4b089bb29030305372a1586fd2d599ff16/omero_gallery-3.4.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "34b53f98ff476c6a479c52a2bb6c5838d2a628792f113b5ea306030c3c9ea681",
                "md5": "04601f41e5732df934a55689c9947888",
                "sha256": "52e86bbe50091cb7afb81bd63301db31c59f3b56e3d5fffee5b30da164e362eb"
            },
            "downloads": -1,
            "filename": "omero-gallery-3.4.3.tar.gz",
            "has_sig": false,
            "md5_digest": "04601f41e5732df934a55689c9947888",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3",
            "size": 302848,
            "upload_time": "2023-06-15T13:32:59",
            "upload_time_iso_8601": "2023-06-15T13:32:59.055286Z",
            "url": "https://files.pythonhosted.org/packages/34/b5/3f98ff476c6a479c52a2bb6c5838d2a628792f113b5ea306030c3c9ea681/omero-gallery-3.4.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-15 13:32:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ome",
    "github_project": "omero-gallery",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "omero-gallery"
}
        
Elapsed time: 0.09109s