Skip to content

Releases: davewalker5/PlateLibrary

Version 1.15.0

Choose a tag to compare

@davewalker5 davewalker5 released this 05 Apr 10:30
e919aff

Docker Support

  • Support a containerised version of the Plate Library
  • It's recommended to run the containerised version using Docker Compose
  • The following is an example Docker Compose file:
services:
  platelibrary:
    container_name: platelibrary
    image: davewalker5/platelibrary:latest
    platform: linux/amd64
    restart: always
    ports:
      - "8090:8501"
    volumes:
      - /path/to/plate/library/database/folder:/var/opt/platelibrary/
  • "/path/to/plate/library/database/folder" should be the path to a folder on the host machine containing:
    • The plate library database, plate_library.db
    • A configuration file, config.json
  • The configuration file contains parameters for customising location maps, as follows:
{
    "location" : {
        "default_latitude": 51.75,
        "default_longitude": -1.25,
        "map_zoom": 11,
        "map_style": null,
        "attribution": null
    }
}
  • These can be customised as required
  • For the plate image preview to work in the plate editor, the plate images themselves must use the folder structure described in the release notes for Version 1.6.0 and that folder structure must be in the database folder specified in the volume mount in the Docker Compose file
  • The following is an example of how that folder structure might look:
/path/to/plate/library/database/folder
│
├── 2026
│   ├── 03 Mar
│   │   ├── SI-II-004.png
│   │   ├── SI-II-005.png
│   │   ├── SI-II-006.png
│   │   ├── SI-II-007.png
│   ├── 04 Apr
│       └── SI-II-048.png
├── config.json
└── plate_library.db

Version 1.14.0

Choose a tag to compare

@davewalker5 davewalker5 released this 02 Apr 17:35

Maintenance Release

  • Prevent the warning generated the first time a new plate is added after starting the application
  • When adding new investigations, suggest the next investigation reference number
  • Add a convenience view over the SPECIES table that generates a consistently formatted label for the species
  • Added subject (species) to the investigation export
  • Added investigation export to the export script

1.13.1

Choose a tag to compare

@davewalker5 davewalker5 released this 31 Mar 10:32

PROJ_DATA Folder Setup

  • The application uses pyproj for coordinate transformations from latitude and longitude to coordinate references
  • On recent versions of the OS, pip will find the prebuilt package
  • On older versions, it won't find the prebuilt package and running the plate library editor will produce this error, or similar:
pyproj.exceptions.DataDirError: Valid PROJ data directory not found. Either set the path using the environmental variable PROJ_DATA (PROJ 9.1+) | PROJ_LIB (PROJ<9.1) or with `pyproj.datadir.set_data_dir`.
  • The fix is to install via either Homebrew or MacPorts, using one of the following commands:
brew install proj
sudo port install proj
  • Then, the PROJ_DATA environment variable must be set before running the streamlit application
  • The following is an example assuming a MacPorts install of proj 9.6.2:
export PROJ_DATA=/opt/local/lib/proj9/share/proj
  • This release adds code to the editor run scripts to set PROJ_DIR before running streamlit

Version 1.13.0

Choose a tag to compare

@davewalker5 davewalker5 released this 31 Mar 09:48
e938ed0
  • Automatically calculate the coordinate reference when clicking on the location map

Version 1.12.0

Choose a tag to compare

@davewalker5 davewalker5 released this 31 Mar 09:21
2ff09cb

Map Controls

  • Added simple map controls to the map:
    • Add a pin
    • Centre on that pin having scrolled away
    • Reset the map view
    • Set map styling

Version 1.11.0

Choose a tag to compare

@davewalker5 davewalker5 released this 31 Mar 08:30
41e234c

Clickable Location Map

  • Added a clickable map to the location maintenance pages
  • Added a JSON configuration file
  • Configuration parameters determine where the map initially centres and how it is styled

Version 1.10.0

Choose a tag to compare

@davewalker5 davewalker5 released this 31 Mar 07:24
57ad924

Coordinate Reference Calculation

  • Integrate a coordinate reference calculator in the location maintenance section:
    • Enter the latitude and longitude
    • Select the coordinate system to convert to
    • Click "Calculate" to populate the coordinate reference field
  • This supports British National Grid (BNG), UTM and MGRS
  • The coordinate system is now persisted to the database alongside the other location properties

Version 1.9.0

Choose a tag to compare

@davewalker5 davewalker5 released this 30 Mar 21:06
6d14975

Multiple Stains per Plate

  • Support association of more than one stain with a single plate

Version 1.8.0

Choose a tag to compare

@davewalker5 davewalker5 released this 30 Mar 17:36
ef27be5

Plate Editor Enhancements

  • After saving a new plate, retain the following fields:
    • Investigation
    • Date
    • Notebook reference
    • Specimen
    • Species
    • Objective
    • Camera
    • Stain
    • Location
  • Also, update the suggested next plate and plate reference
  • Fix the warning displayed on the plate editor page on first opening the tab
  • Default the plate file extension to ".png"

Version 1.7.0

Choose a tag to compare

@davewalker5 davewalker5 released this 27 Mar 17:47
c62b1ea

Code Structure Refactoring

  • Refactor the code into separate modules
  • Implement pyproject.toml in place of requirements.txt