A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

wastd

Turtle strandings in Western Australian, as reported to the Department of Biodiversity, Conservation and Attractions.
https://github.com/dbca-wa/wastd

Category: Biosphere
Sub Category: Marine Life and Fishery

Keywords

biodiversity conservation-bio marine-species marine-turtles marine-wildlife-incidents strandings

Keywords from Contributors

animals transforms measur archiving generic optimize compose conversion observation projection

Last synced: about 19 hours ago
JSON representation

Repository metadata

Western Australian Sea Turtle and Strandings Database

README.md

Western Australian Sea Turtles Database (WASTD)

This project is the Department of Biodiversity, Conservation and Attractions
Sea Turtles Database corporate application.

Project layout / description

  • wastd: the core Django project directory, containing common settings, configuration and templates.
  • observations: the primary data model for the project, defining the Encounter and Observation models and subclasses.
  • users: an extension of the Django contrib.auth.models.User class, customised for this project.
  • wamtram2: auto-generated model classes to provide readonly ORM utility for the legacy WAMTRAM database.

The intent is for this project to replace the WAMTRAM legacy project and to act as the repository for
turtle tagging data. The wamtram application was created to ease access to the legacy database, and
the tagging application was created as an interim step to refactoring the legacy data into the
Encounter/Observation model defined in the observations application. It is expected that wamtram will
be removed after data migration, and that tagging will be removed after the data is refactored.

Installation

The recommended way to set up this project for development is using
Poetry to install and manage a virtual Python
environment. With Poetry installed, change into the project directory and run:

poetry install

To run Python commands in the virtualenv, thereafter run them like so:

poetry run python manage.py

Manage new or updating project dependencies with Poetry also, like so:

poetry add newpackage==1.0

Environment variables

This project uses python-dotenv to set environment variables (in a .env file).
The following variables are required for the project to run:

DATABASE_URL="postgis://USER:PASSWORD@HOST:5432/DATABASE_NAME"

Variables below may also need to be defined (context-dependent):

SECRET_KEY=ThisIsASecretKey
DEBUG=True
GEOSERVER_URL=https://geoserver.url/service

Running

Use runserver to run a local copy of the application:

poetry run python manage.py runserver 0:8080

Run console commands manually:

poetry run python manage.py shell_plus

Media uploads

The production system stores media uploads in Azure blob storage.
Credentials for doing so should be defined in the following environment
variables:

AZURE_ACCOUNT_NAME=name
AZURE_ACCOUNT_KEY=key
AZURE_CONTAINER=container_name

To bypass this and use local media storage (for development, etc.) simply set
the LOCAL_MEDIA_STORAGE=True environment variable and create a writable
media directory in the project directory.

Docker image

To build a new Docker image from the Dockerfile:

docker image build -t ghcr.io/dbca-wa/wastd .

Docs

Use sphinx-build build docs locally:

poetry run sphinx-build -b html docs _build

Use http.server serve them:

poetry run python -m http.server --directory _build 8080

Pre-commit hooks

This project includes the following pre-commit hooks:

Pre-commit hooks may have additional system dependencies to run. Optionally
install pre-commit hooks locally like so:

poetry run pre-commit install

Reference: https://pre-commit.com/


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 5 days ago

Total Commits: 4,238
Total Committers: 8
Avg Commits per committer: 529.75
Development Distribution Score (DDS): 0.697

Commits in past year: 1,128
Committers in past year: 3
Avg Commits per committer in past year: 376.0
Development Distribution Score (DDS) in past year: 0.091

Name Email Commits
florianm f****r@d****u 1285
Ashley Felton a****y@r****m 1128
Xinlyu Wang x****e@g****m 1025
Florian Mayer F****r@d****u 634
Evan Hallein e****n@i****m 109
Florian Mayer F****r@d****u 43
dependabot[bot] 4****] 13
Florian Mayer F****r@g****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 99
Total pull requests: 237
Average time to close issues: almost 3 years
Average time to close pull requests: about 1 month
Total issue authors: 3
Total pull request authors: 4
Average comments per issue: 0.42
Average comments per pull request: 0.74
Merged pull request: 89
Bot issues: 0
Bot pull requests: 128

Past year issues: 0
Past year pull requests: 93
Past year average time to close issues: N/A
Past year average time to close pull requests: 23 days
Past year issue authors: 0
Past year pull request authors: 3
Past year average comments per issue: 0
Past year average comments per pull request: 1.11
Past year merged pull request: 27
Past year bot issues: 0
Past year bot pull requests: 56

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/dbca-wa/wastd

Top Issue Authors

  • florianm (94)
  • RyanDou (4)
  • ehallein (1)

Top Pull Request Authors

  • dependabot[bot] (128)
  • ehallein (41)
  • ropable (41)
  • RickWangPerth (27)

Top Issue Labels

  • bug (15)
  • UX (12)
  • data (12)
  • docs (12)
  • reporting (11)
  • model (6)
  • ready (5)
  • forms (5)
  • in progress (3)
  • support (2)
  • api (2)
  • test (1)
  • filters (1)

Top Pull Request Labels

  • dependencies (128)
  • python (75)
  • github_actions (4)

Dependencies

Dockerfile docker
  • builder_base latest build
  • python 3.10.4-buster build
  • python_libs_wastd latest build
package.json npm
  • browser-sync ^2.12.10 development
  • del ^2.2.0 development
  • gulp ^3.9.1 development
  • gulp-autoprefixer ^3.1.0 development
  • gulp-cssnano ^2.1.2 development
  • gulp-exec ^2.1.2 development
  • gulp-imagemin ^3.0.1 development
  • gulp-pixrem ^1.0.0 development
  • gulp-plumber ^1.1.0 development
  • gulp-rename ^1.2.2 development
  • gulp-sass ^2.3.1 development
  • gulp-uglify ^1.5.3 development
  • gulp-util ^3.0.7 development
  • run-sequence ^1.2.1 development
poetry.lock pypi
  • 165 dependencies
.github/workflows/docs_pages.yml actions
  • JamesIves/github-pages-deploy-action v4 composite
  • actions/cache v2 composite
  • actions/checkout v3 composite
  • actions/setup-python v2 composite
  • snok/install-poetry v1 composite
.github/workflows/image-build-scan.yml actions
  • actions/checkout v3 composite
  • aquasecurity/trivy-action master composite
  • docker/build-push-action v4 composite
  • docker/login-action v2 composite
  • docker/metadata-action v4 composite
  • docker/setup-buildx-action v2 composite
  • docker/setup-qemu-action v2 composite
  • github/codeql-action/upload-sarif v2 composite
.github/workflows/run-tests.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • snok/install-poetry v1 composite
  • postgis/postgis 13-3.1-alpine docker
pyproject.toml pypi
  • dbca-utils 1.1.6
  • dj-database-url 1.0.0
  • django 3.2.21
  • django-ajax-selects 2.2.0
  • django-bootstrap-pagination 1.7.1
  • django-bootstrap4 22.3
  • django-crispy-forms 1.14.0
  • django-easy-select2 1.5.8
  • django-export-download 0.2.3
  • django-extensions 3.2.1
  • django-filter 22.1
  • django-fsm 2.8.1
  • django-fsm-admin 1.2.5
  • django-fsm-log 3.1.0
  • django-geojson 4.0.0
  • django-grappelli 3.0.4
  • django-import-export 3.1.0
  • django-leaflet 0.28.3
  • django-phonenumber-field 7.0.1
  • django-polymorphic 3.1.0
  • django-reversion 5.0.4
  • django-select2 8.0.0
  • django-storages 1.13.2
  • django-tables2 2.4.1
  • gunicorn 20.1.0
  • mssql-django 1.2
  • pandas 1.5.2
  • phonenumbers 8.13.3
  • pillow 9.5.0
  • psycopg2 2.9.6
  • python ^3.10
  • python-dateutil 2.8.2
  • python-dotenv 0.21.0
  • python-slugify 8.0.1
  • webtemplate-dbca 1.5.1
  • whitenoise 6.3.0
  • xmltodict 0.13.0

Score: 4.718498871295094