A user-friendly frontend interface to an OCS Science Archive written in Vue.
This repository presents a frontend largely based off of Las Cumbres Observatory's Science Archive, with configurable external service URLs and a set of frontend customizations. Users who wish to use the frontend as-is may minimally customize the frontend using environment variables.
For users who wish to further customize the layout and functionality of their archive frontend, we recommend forking this project and overriding logic where necessary.
- An OCS Science Archive
- An OCS Observation Portal
- An OCS Simbad2k Service for catalog lookups
- An OCS Thumbnail Service to generate JPEG thumbnails from data products
The following environment variables can be used to configure your specific science-archive client instance.
Variable | Description | Default |
---|---|---|
VUE_APP_OBSERVATION_PORTAL_API_URL |
Observation portal API URL | http://127.0.0.1:8000/api |
VUE_APP_ARCHIVE_API_URL |
Archive API URL | http://127.0.0.1:9500 |
VUE_APP_SIMBAD_SERVICE_URL |
Simbad service URL | http://127.0.0.1:9800 |
VUE_APP_THUMBNAIL_SERVICE_URL |
Thumbnail service URL | http://127.0.0.1:8500 |
Variable | Description | Default |
---|---|---|
VUE_APP_NAVBAR_BRAND_URL |
URL link embedded in navbar brand image | empty string |
VUE_APP_BRAND_IMAGE_LARGE |
Image URL for brand image (large version) | empty string |
VUE_APP_BRAND_IMAGE_SMALL |
Image URL for brand image (small version) | empty string |
VUE_APP_BRAND_IMAGE_ALT_TEXT |
Alt text for brand image | "Brand Image" |
VUE_APP_DOCUMENTATION_URL |
URL for organization's archive/data specification documentation | https://observatorycontrolsystem.github.io/integration/data_flow/ |
VUE_APP_ORGANIZATION_HOMEPAGE_URL |
Link to organization's homepage | empty string |
VUE_APP_ORGANIZATION_HOMEPAGE_TEXT |
Text for link to organization's homepage | 'Organization Home' |
VUE_APP_COPYRIGHT_ORGANIZATION |
Organization to cite in the copyright text | 'Organization' |
VUE_APP_TERMS_OF_SERVICE_URL |
URL for organization's terms of service | empty string |
VUE_APP_PRIVACY_POLICY_URL |
URL for organization's privacy policy | empty string |
VUE_APP_FEEDBACK_EMAIL |
Organization email for user feedback | mailto:[email protected] |
VUE_APP_GITHUB_API_URL |
URL for GitHub API source code repository | https://github.com/observatorycontrolsystem/science-archive |
VUE_APP_API_DOCUMENTATION_URL |
URL for organization's Archive API documentation | https://observatorycontrolsystem.github.io/api/science_archive/ |
VUE_APP_GENERAL_DOCUMENTATION_URL |
URL for organization's top-level user documentation | https://observatorycontrolsystem.github.io/ |
VUE_APP_REDUCTION_LEVEL_OPTIONS |
Key/value mapping from numeric reduction level to human-readable reduction level | '{"0": "Raw", "10": "Processed"}' |
When running this project via Docker, the values environment variables listed above will automatically be added to the config/config.json
for runtime configuration. This is due to the fact that when running this application in Docker, the VUE_APP...
environment variables are not passed to the application, since nginx is being used and node is not responsible for serving the files. Please note that if an environment variable is added, then it will also need to be added to the list in docker/entrypoint.sh
.
npm install
npm run serve
npm run build
npm run test:unit
npm run lint:check
npm run lint:fix