{"id":46831104,"url":"https://github.com/whoigit/ifcbdb","last_synced_at":"2026-03-10T10:02:51.907Z","repository":{"id":40462244,"uuid":"178424730","full_name":"WHOIGit/ifcbdb","owner":"WHOIGit","description":"IFCB dashboard","archived":false,"fork":false,"pushed_at":"2026-03-09T19:43:25.000Z","size":22610,"stargazers_count":14,"open_issues_count":76,"forks_count":13,"subscribers_count":6,"default_branch":"master","last_synced_at":"2026-03-10T01:04:00.417Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WHOIGit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-29T14:53:50.000Z","updated_at":"2026-03-09T19:43:24.000Z","dependencies_parsed_at":"2024-01-08T18:59:22.219Z","dependency_job_id":"569daa70-64b9-41f8-bb28-047668e4def4","html_url":"https://github.com/WHOIGit/ifcbdb","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/WHOIGit/ifcbdb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WHOIGit%2Fifcbdb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WHOIGit%2Fifcbdb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WHOIGit%2Fifcbdb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WHOIGit%2Fifcbdb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WHOIGit","download_url":"https://codeload.github.com/WHOIGit/ifcbdb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WHOIGit%2Fifcbdb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30329698,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-10T10:02:13.928Z","updated_at":"2026-03-10T10:02:51.855Z","avatar_url":"https://github.com/WHOIGit.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IFCB Dashboard\n\nThe IFCB dashboard provides a web interface for interacting with IFCB data, metadata, and imagery.\nUsers can load raw data and data products such as classification results into the dashboard, where they can be viewed.\nIn addition, metadata can be uploaded to the dashboard to allow for geospatial referencing / mapping.\n\n## Installation\n\nThe dashboard is deployed using Docker. Docker will need to be installed before you can run the dashboard.\n\nTo configure the dashboard, copy `dotenv.template` to `.env` and edit the `.env` file with configuration parameters.\n\nHere are the key parameters to edit in that file:\n\n* `PRIMARY_DATA_DIR` refers to where your IFCB data is located on your system.\n* `POSTGIS_IMAGE` needs to be configured if you are using Apple Silicon or another ARM-based system; otherwise the default value will work.\n* `NGINX_TEMPLATE` allows you to specify an alternative NGINX configuration. Using the default is almost always preferable, as it is suitable for most deployment scenarios.\n* `HOST` should be the fully qualified domain name of the computer where you are running the dashboard. The default is `localhost` which is used for testing purposes only.\n* `HTTP_PORT` and `HTTPS_PORT` control which ports the dashboard will respond at. The defaults are 80 and 443 and they should work unless you are already running a web service on your computer that is already listening on those ports.\n\n### Security configuration\n\nTo run the dashboard, you'll need an SSL certificate (unless you're handling TLS termination in a web proxy, see below). This should be able to be provided by your host organization. If you cannot acquire an SSL certificate, you will need to generate a \"self-signed\" certificate but that configuration should only be used for testing, because it will give users a security warning in their browsers that strongly encourage them to reject access to the site.\n\nOnce you have acquired the certificate and placed the certificate file and key file in appropriate locations on your system, you will need to configure the dashboard to access that certificate using the `SSL_CERT` and `SSL_KEY` parameters in `.env`, using the path to each file.\n\nIn addition to SSL, there is a security parameter in the `.env` file called `DJANGO_SECRET_KEY`. You will need to change that parameter and set it to some unique value that can't be easily guessed.\n\nIf you're terminating TLS at the web proxy layer you can run ifcbdb in HTTP-only mode by setting `NGINX_TEMPLATE=./nginx.conf.template`.\n\n### Building the image yourself\n\nIf you don't want to use the image from Docker Hub (for instance, if you've made modifications) you can build it yourself. Once you build and tag the image from the provided Dockerfile, configure the `IFCBDB_IMAGE` parameter in `.env` to refer to your image tag.\n\n### Notes on ARM platforms (e.g., Apple Silicon)\n\nNote that as of February 2024 the official postgis image in Docker Hub is currently not available for ARM platforms. An alternate image is provided as an example configuration in `dotenv.template`.\n\n## Running the dashboard\n\nOnce you have configured `.env`, you can bring the dashboard up by running `docker-compose up -d` from the directory containing the `.env` and `docker-compose.yml` files.\n\n### Post-installation steps\n\nAfter starting the dashboard for the first time, you'll need to run the following commands to initialize the dashboard's backend database and files.\n\n```\ndocker compose exec ifcbdb python manage.py migrate\ndocker compose exec ifcbdb python manage.py collectstatic\n```\n\n### Logging in for the first time\n\nYou will need to create a \"superuser\" account, specifying its username and password. To do that, run this command to create your user and password.\n\n```\ndocker compose exec ifcbdb python manage.py createsuperuser\n```\n\nIf you need to create the superuser non-interactively, you can set the `DJANGO_SUPERUSER_PASSWORD` environment variable\n([see Django docs](https://docs.djangoproject.com/en/5.0/ref/django-admin/#envvar-DJANGO_SUPERUSER_PASSWORD)).\n\n### Advanced configuration\n\nIf you need to set configuration options beyond the available environment variables, you can create a\n`local_settings.py` file and set environment variable `LOCAL_SETTINGS` to its path. The file will\nbe imported at the end of Django's `settings.py`, allowing you to override any previous setting.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhoigit%2Fifcbdb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwhoigit%2Fifcbdb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhoigit%2Fifcbdb/lists"}