https://github.com/Sage-Bionetworks/data_curator_config
Project configurations for the Data Curator App
https://github.com/Sage-Bionetworks/data_curator_config
Last synced: 6 months ago
JSON representation
Project configurations for the Data Curator App
- Host: GitHub
- URL: https://github.com/Sage-Bionetworks/data_curator_config
- Owner: Sage-Bionetworks
- Created: 2023-04-24T22:13:14.000Z (about 2 years ago)
- Default Branch: prod
- Last Pushed: 2024-11-14T18:55:42.000Z (7 months ago)
- Last Synced: 2024-11-14T19:40:00.775Z (7 months ago)
- Size: 11.5 MB
- Stars: 2
- Watchers: 6
- Forks: 19
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- jimsghstars - Sage-Bionetworks/data_curator_config - Project configurations for the Data Curator App (Others)
README
# Project configurations for the [Data Curator App](github.com/sage-Bionetworks/data_curator)
This repo contains DCC configurations for the Sage-hosted multi-tenant Data Curator App. The prod and staging branches configure their respective version of the app. To contribute, fork the repo and create PRs into the staging or prod branch, depending on which app you want to update. The staging and prod branches are maintained separately; they have diverged and are not intended to be merged, so make sure to start changes from the desired branch.
The file [tenants.json](tenants.json) controls which DCCs appear in DCA. It contains a json object `tenants` which holds one json object per DCC. Each DCC object requires:
- `name`: The name of the DCC to appear in the DCA selection menu
- `synapse_asset_view`: The synapse ID of the DCCs fileview for DCA. Must include "syn"
- `config_location`: Filepath to the DCC's DCA config file. More details below.Each DCC will have its own directory to store configuration files. At minimum it will have [dca_config.json](demo/dca_config.json). This file can be validated against [schemas/dca_config.schema.json](schemas/dca_config.schema.json). At the top level it contains three json objects, `dcc`, `dca`, and `schematic`.
`dcc` contains various configurations about your DCC and data model:
- `name`: name of DCC in dropdown menu
- `synapse_asset_view`: synapse ID of asset view.
- `data_model_url`: data model URL (**RAW** github file).
- `data_model_info`: URL to a description of the data model, such as release notes.
- `template_menu_config_file`: URL to DCA template dropdown file.
- `logo_location`: URL to logo file.
- `logo_link`: link to DCC website.
- `dcc_help_link`: link for users to find help about DCA.
- `portal_help_link`: link for users to find help about their portal.`dca` contains DCA-specific customizations:
- `use_compliance_dashboard`: `TRUE` or `FALSE`. Only FALSE currently supported. Data compliance dashboard.
- `primary_col`: center header color hex code.
- `secondary_col`: right header color hex code.
- `sidebar_col`: left header color hex code.`schematic` contains several objects for passing parameters to schematic commands:
- `global`
- `data_model_labels`: `class_label` or `display_label` [Schema labelling option](https://sagebionetworks.jira.com/wiki/spaces/SCHEM/pages/3089498257/How+to+Define+Display+Name+Labeling)
- `manifest_generate`- `output_format`: `excel`or`google_sheets`. [Schemtic manifest get option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-manifest-get).
- `use_annotations`: `TRUE` or `FALSE`. [Schemtic manifest get option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-manifest-get).- `model_validate`
- `restrict_rules`: `TRUE` or `FALSE`. [Schematic model validate and submit option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-model-validate).
- `enable_cross_manifest_validation`: `TRUE` or `FALSE`. Use cross manifest validation.- `model_submit`
- `table_column_names`: `class_label`, `display_label`, or `display_name` [Schema labelling option](https://sagebionetworks.jira.com/wiki/spaces/SCHEM/pages/3089498257/How+to+Define+Display+Name+Labeling)
- `annotation_keys`: `class_label` or `display_label` [Schema labelling option](https://sagebionetworks.jira.com/wiki/spaces/SCHEM/pages/3089498257/How+to+Define+Display+Name+Labeling)
- `table_manipulation`: `replace` or `upsert`. [Schematic model submit option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-model-submit).
- `manifest_record_type`: One of `table_and_file`, `file_only` , `file_and_entities` or `table_file_and_entities`. [Schematic model submit option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-model-submit).
- `hide_blanks`: `TRUE` or `FALSE`. [Schematic model submit option for blank annotations](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-model-submit).
- `file_annotations_upload`: `TRUE` or `FALSE`. Annotate associated files/entities with values in the manifest. [Schematic model submit option](https://sage-schematic.readthedocs.io/en/develop/cli_reference.html#schematic-model-submit).Each DCC also needs a template configuration file. This controls which data types are accessible to users and if they contain record-based or file-based data. It can be generated by hand or automatically from a data model using the [dca-template-config-action github action](https://github.com/Sage-Bionetworks/dca-template-config-action). See an [example workflow in a data model repo](https://github.com/Sage-Bionetworks/data-models/blob/main/.github/workflows/create-template-config.yml). This json file can be validated against [schemas/dca_template_config.schema.json](schemas/dca_template_config.schema.json). The top level of the file needs a json array of objects named `manifest_schemas`. Each object in the array requires the strings:
- `display_name`: Display name of the data type
- `schema_name`: Name of the schema
- `type`: record or file. If the manifest has Filename as a column, type should be file. When annotating records inside a spreadsheet-like file, such as specimen or patient information, type should be record.See our [example dca_template_config.json](https://github.com/Sage-Bionetworks/data-models/blob/main/dca-template-config.json)