Skip to content

Commit acc7e96

Browse files
authored
feat(config): add documentation for frontend configuration options (#2513)
* added documentation for frontend config flags * changed from flags to options * changed proposalDefaultTab to defaultTab and also updated the document
1 parent 8b10dfb commit acc7e96

2 files changed

Lines changed: 104 additions & 0 deletions

File tree

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
# Frontend Configuration Guide
2+
3+
## Overview
4+
5+
This guide documents frontend configuration options that control various UI behaviors and features in SciCat. These settings are defined in the configuration file specified by the `FRONTEND_CONFIG_FILE` environment variable (default `src/config/frontend.config.json`).
6+
7+
**TODO:** Many of these configuration options were added a long time ago and may no longer be in use. This documentation should be reviewed and updated to reflect the current state of the application and remove obsolete configuration flags.
8+
9+
## Configuration Options
10+
11+
| **Configuration Options** | **Type** | **Default Value** | **Description** |
12+
|------------------------|----------|-------------------|-----------------|
13+
| **`defaultMainPage`** | object | | Defines the default landing page for authenticated and non-authenticated users. |
14+
|     `nonAuthenticatedUser` | string | `"DATASETS"` | Default landing page for non-authenticated users. |
15+
|     `authenticatedUser` | string | `"PROPOSALS"` | Default landing page for authenticated users. |
16+
| `checkBoxFilterClickTrigger` | boolean | `false` | Enable/disable automatic filter application when clicking checkboxes in filters. |
17+
| `accessTokenPrefix` | string | `"Bearer "` | Set the backend token prefix. Should be empty string for old backend or "Bearer " if using scicat-backend-next. |
18+
| `addDatasetEnabled` | boolean | `false` | Show/hide the "Create Dataset" button in the Datasets Dashboard. |
19+
| `archiveWorkflowEnabled` | boolean | `false` | Enable/disable the archive/retrieve workflow. |
20+
| `datasetReduceEnabled` | boolean | `true` | Enable/disable the automatic Dataset reduction/analysis workflow. |
21+
| `datasetJsonScientificMetadata` | boolean | `true` | |
22+
| `editDatasetEnabled` | boolean | `true` | |
23+
| `editDatasetSampleEnabled` | boolean | `true` | Enable/disable editing of which Sample a Dataset belongs to. |
24+
| `editMetadataEnabled` | boolean | `true` | Enable/disable editing of Scientific Metadata. |
25+
| `addSampleEnabled` | boolean | `false` | |
26+
| `externalAuthEndpoint` | string | `"/api/v3/auth/msad"` | Endpoint used for third party authentication, e.g., LDAP. |
27+
| `facility` | string | `"SciCat Vanilla"` | Facility running the SciCat instance. |
28+
| `siteIcon` | string | `""` | Path to the site icon/logo image file. |
29+
| `siteTitle` | string | `""` | Title displayed in the browser tab and header. |
30+
| `siteSciCatLogo` | string | `"full"` | |
31+
| `loginFacilityLabel` | string | `""` | Label for the facility login option. |
32+
| `loginLdapLabel` | string | `""` | Label for the LDAP login option. |
33+
| `loginLocalLabel` | string | `""` | Label for the local login option. |
34+
| `loginFacilityEnabled` | boolean | `true` | Enable/disable facility login option. |
35+
| `loginLdapEnabled` | boolean | `true` | Enable/disable LDAP login option. |
36+
| `loginLocalEnabled` | boolean | `true` | Enable/disable local login option. |
37+
| `fileColorEnabled` | boolean | `true` | Enable/disable file size color representation in the Datasets Dashboard. |
38+
| `fileDownloadEnabled` | boolean | `true` | Enable/disable download workflow for Dataset datafiles. |
39+
| `gettingStarted` | string | `null` | URL to Getting Started guide for SciCat, displayed on the Help page. |
40+
| `ingestManual` | string | `null` | URL to Ingest Manual for SciCat, displayed on the Help page. |
41+
| `jobsEnabled` | boolean | `true` | Enable/disable Job workflow. |
42+
| `jsonMetadataEnabled` | boolean | `true` | Show/hide the "Show Metadata" button on the details pages, allowing users to see the JSON representation of the current document. |
43+
| `jupyterHubUrl` | string | `""` | URL to Jupyter Hub instance used for data analysis. |
44+
| `landingPage` | string | `""` | URL to the facility's Landing Page for Published Data. |
45+
| `lbBaseURL` | string | `""` | URL to the SciCat Backend. |
46+
| `logbookEnabled` | boolean | `true` | Enable/disable SciChat Logbook integration. |
47+
| `loginFormEnabled` | boolean | `true` | Enable/disable the local Login form. Should be disabled if using oAuth2 for authentication. |
48+
| `metadataPreviewEnabled` | boolean | `true` | Enable/disable Scientific Metadata preview on the Datasets Dashboard. |
49+
| `metadataStructure` | string | `""` | Allow tree structure for Scientific Metadata. Set to empty string for flat structure, or "tree" for tree structure. |
50+
| `multipleDownloadAction` | string | `""` | URL to service handling direct download of datafiles. |
51+
| `multipleDownloadEnabled` | boolean | `true` | Enable/disable ability to download multiple datafiles. |
52+
| `oAuth2Endpoints` | array | `[]` | List of endpoints used for oAuth2 authentication. Each endpoint should have `authURL` and `displayText` properties. |
53+
| `policiesEnabled` | boolean | `true` | Enable/disable Dataset Policies workflow. |
54+
| `retrieveDestinations` | array | `[]` | List of destinations for Dataset retrievals. |
55+
| `riotBaseUrl` | string | `""` | URL to SciChat client. |
56+
| `scienceSearchEnabled` | boolean | `true` | Enable/disable filtering documents on Scientific Metadata. |
57+
| `scienceSearchUnitsEnabled` | boolean | `true` | Enable/disable filtering documents on Scientific Metadata using units. |
58+
| `searchPublicDataEnabled` | boolean | `true` | Enable/disable filtering Datasets on public or non-public data. |
59+
| `searchSamples` | boolean | `true` | Enable/disable searching Samples on Samples Dashboard. |
60+
| `sftpHost` | string | `""` | URL to SFTP service used for downloading files exceeding maximum allowed file size. |
61+
| `sourceFolder` | string | `""` | Default source folder path for datasets. |
62+
| `maxDirectDownloadSize` | number | `0` | Set a maximum allowed file size for downloading datafiles over HTTP (in bytes). |
63+
| `maxFileSizeWarning` | string | `""` | Warning message displayed when files exceed the maximum direct download size. Supports placeholders: `<maxDirectDownloadSize>`, `<sftpHost>`, `<sourceFolder>`. |
64+
| `shareEnabled` | boolean | `true` | Enable/disable workflow for sharing Datasets with other users using their email address. |
65+
| `shoppingCartEnabled` | boolean | `true` | Enable/disable the Dataset cart used for bulk actions. |
66+
| `shoppingCartOnHeader` | boolean | `true` | Toggle Dataset cart placement, either on header or to the left on the Datasets Dashboard. |
67+
| `tableSciDataEnabled` | boolean | `true` | Enable/disable Scientific Metadata table view on details pages. If disabled, Scientific Metadata is displayed as raw JSON. |
68+
| `datasetDetailsShowMissingProposalId` | boolean | `false` | |
69+
| `notificationInterceptorEnabled` | boolean | `true` | |
70+
| `metadataEditingUnitListDisabled` | boolean | `true` | |
71+
| `hideEmptyMetadataTable` | boolean | `false` | |
72+
| `datafilesActionsEnabled` | boolean | `true` | Enable/disable custom datafile actions configuration. |
73+
| `datafilesActions` | array | `[]` | Array of custom action configurations for datafiles. Each action can define download, notebook generation, or other custom behaviors. |
74+
| `labelsLocalization` | object | `{}` | Localization configuration for labels in datasets and proposals. Maps field names to display labels. |
75+
| `dateFormat` | string | `"yyyy-MM-dd HH:mm"` | Default date format used throughout the application. |
76+
| **`mainMenu`** | object | | Configuration for main menu visibility based on user authentication status. |
77+
| &nbsp;&nbsp;&nbsp;&nbsp;**`nonAuthenticatedUser`** | object | | Menu configuration for non-authenticated users. |
78+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`datasets` | boolean | `true` | Show/hide datasets menu item. |
79+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`files` | boolean | `false` | Show/hide files menu item. |
80+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`instruments` | boolean | `true` | Show/hide instruments menu item. |
81+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`jobs` | boolean | `false` | Show/hide jobs menu item. |
82+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`policies` | boolean | `false` | Show/hide policies menu item. |
83+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`proposals` | boolean | `true` | Show/hide proposals menu item. |
84+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`publishedData` | boolean | `true` | Show/hide published data menu item. |
85+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`samples` | boolean | `false` | Show/hide samples menu item. |
86+
| &nbsp;&nbsp;&nbsp;&nbsp;**`authenticatedUser`** | object | | Menu configuration for authenticated users. |
87+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`datasets` | boolean | `true` | Show/hide datasets menu item. |
88+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`files` | boolean | `true` | Show/hide files menu item. |
89+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`instruments` | boolean | `true` | Show/hide instruments menu item. |
90+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`jobs` | boolean | `true` | Show/hide jobs menu item. |
91+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`policies` | boolean | `false` | Show/hide policies menu item. |
92+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`proposals` | boolean | `true` | Show/hide proposals menu item. |
93+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`publishedData` | boolean | `true` | Show/hide published data menu item. |
94+
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`samples` | boolean | `true` | Show/hide samples menu item. |
95+
| **`defaultTab`** | object | | Specifies which tab is shown by default when viewing different entities. |
96+
| &nbsp;&nbsp;&nbsp;&nbsp;`proposal` | string | `"details"` | Default tab for proposals. Valid values: `"details"`, `"datasets"`, `"relatedProposals"`, `"logbook"`. |
97+
98+
## See Also
99+
100+
- [Default List Settings Configuration](./default-list-settings.md)
101+
- [Dynamic Dataset Detail Component Configuration](./dynamic-dataset-detail-component.md)

src/config/frontend.config.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -550,5 +550,8 @@
550550
"publishedData": true,
551551
"samples": true
552552
}
553+
},
554+
"defaultTab": {
555+
"proposal": "relatedProposals"
553556
}
554557
}

0 commit comments

Comments
 (0)