feat: data-source-ui Atlas3 plugin - Description page - #3212
Open
ohdsi-trex wants to merge 1 commit into
Open
Conversation
ohdsi-trex
requested review from
SantanM,
brandantck,
csafreen,
hengxian-jiang,
p-hoffmann and
suwarnoong
as code owners
August 26, 2026 07:48
Contributor
There was a problem hiding this comment.
Pull request overview
Introduces a Vue single-spa data-source plugin for Atlas3, but key routing, deployment, API, navigation, and file-list requirements remain incomplete.
Changes:
- Adds Vue/Vuetify plugin scaffolding and SystemJS build configuration.
- Adds a basic data-source description view with placeholder sections.
- Registers the plugin and documents implementation plans.
Reviewed changes
Copilot reviewed 15 out of 16 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
plugins/ui/apps/data-source-ui/vite.config.atlas.ts |
Configures the SystemJS build. |
plugins/ui/apps/data-source-ui/tsconfig.json |
Adds TypeScript settings. |
plugins/ui/apps/data-source-ui/src/views/ResourcesPlaceholder.vue |
Adds a resources placeholder. |
plugins/ui/apps/data-source-ui/src/views/DataSourceDescription.vue |
Implements the initial detail view. |
plugins/ui/apps/data-source-ui/src/views/AccessPlaceholder.vue |
Adds an access placeholder. |
plugins/ui/apps/data-source-ui/src/router/index.ts |
Defines local data-source routes. |
plugins/ui/apps/data-source-ui/src/main.ts |
Exposes single-spa lifecycles. |
plugins/ui/apps/data-source-ui/src/components/.gitkeep |
Preserves the components directory. |
plugins/ui/apps/data-source-ui/src/App.vue |
Renders the router view. |
plugins/ui/apps/data-source-ui/src/api/datasource.ts |
Adds the data-source API request. |
plugins/ui/apps/data-source-ui/PLAN.md |
Documents the intended architecture. |
plugins/ui/apps/data-source-ui/package.json |
Defines package dependencies and scripts. |
plugins/ui/apps/data-source-ui/index.html |
Adds the development entry page. |
plugins/atlas/plugins.standalone.json |
Registers the Atlas plugin. |
plans/data-source-ui.md |
Adds a general implementation plan. |
plans/data-source-ui-atlas3-plugin.md |
Adds Atlas3 integration planning. |
Suppressed comments (1)
plugins/ui/apps/data-source-ui/src/api/datasource.ts:17
- The existing dataset endpoint returns the repository's
Studyshape, where the displayed name and description are understudyDetailand the database field isdatabaseCode. Returning raw JSON as this flatDataSourcemeans the title and description remain undefined even after correcting the endpoint. Normalize the existing response into the view model before returning it.
return res.json()
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| "private": true, | ||
| "scripts": { | ||
| "dev": "vite", | ||
| "build": "vite build --config vite.config.atlas.ts", |
Comment on lines
+12
to
+14
| const res = await fetch(`/api/datasets/${id}`, { | ||
| headers: { 'Content-Type': 'application/json' }, | ||
| credentials: 'include', |
Comment on lines
+21
to
+25
| <v-tabs v-model="activeTab" color="primary"> | ||
| <v-tab value="overview">Overview</v-tab> | ||
| <v-tab value="resources">Resources</v-tab> | ||
| <v-tab value="access">Access Request</v-tab> | ||
| </v-tabs> |
| <v-tabs-window-item value="overview"> | ||
| <v-card variant="outlined"> | ||
| <v-card-text> | ||
| <p v-if="dataSource?.description" class="text-body-1 mb-4">{{ dataSource.description }}</p> |
|
|
||
| <v-tabs-window-item value="resources"> | ||
| <v-card variant="outlined"> | ||
| <v-card-text class="text-medium-emphasis">Resources coming soon.</v-card-text> |
| } | ||
| } | ||
| } | ||
| {"version": "1.0","plugins": [{"id": "pythia-plugin","name": "Pythia","version": "0.1.0","entryPoint": "pythia-plugin/index.system.js","menuItems": [],"fabMounts": [{"id": "pythia.fab","label": "Pythia \u2014 design assistant","icon": "mdi-chat-processing-outline","color": "primary","position": "bottom-right"}],"metadata": {"author": "Atlas Team","description": "Pythia \u2014 AI-assisted cohort design advisor for ATLAS v3.0"}},{"id": "results-viewer","name": "Analysis Results","version": "0.2.0","entryPoint": "results-viewer/index.system.js","menuItems": [],"metadata": {"author": "OHDSI","description": "OHDSI HADES analysis results viewer \u2014 runs OhdsiShinyModules via WebR + DuckDB-WASM in-browser"}},{"id": "strategus-plugin","name": "Strategus","version": "0.1.0","entryPoint": "strategus-plugin/index.system.js","menuItems": [],"metadata": {"author": "OHDSI","description": "Strategus Analysis Specification Builder"}},{"id": "notebook-plugin","name": "Notebooks","version": "0.1.0","entryPoint": "notebook-plugin/index.system.js","menuItems": [],"metadata": {"author": "OHDSI","description": "Create, store and run Python/R/Markdown notebooks (Pyodide/WebR)"}},{"id": "network-plugin","name": "Network","version": "0.1.0","entryPoint": "network-plugin/index.system.js","menuItems": [],"metadata": {"author": "OHDSI","description": "Federated network studies \u2014 site plugin. Loads inactive until NETWORK_* config is provided."}},{"id": "studies-plugin","name": "Studies","version": "0.1.0","entryPoint": "studies-plugin/index.system.js","menuItems": [{"id": "studies.main","name": "Studies","route": "/plugins/studies-plugin/","icon": "mdi-flask-outline","order": 40}],"metadata": {"author": "OHDSI","description": "Studies shell: Local / Network / Results"}},{"id": "patient-analytics","name": "Data Exploration","version": "2.0.0","entryPoint": "patient-analytics/index.system.js","menuItems": [{"id": "pa.main","name": "Data Exploration","route": "/plugins/patient-analytics/","icon": "mdi-account-search-outline","order": 45,"insertBefore": "cohorts"}],"metadata": {"author": "D2E","description": "Data Exploration (Patient Analytics/MRI) \u2014 visual cohort exploration against the selected data source"}},{"id": "data-source-ui","name": "Data Source","version": "0.1.0","entryPoint": "data-source-ui/index.system.js","menuItems": [{"id": "data-source-ui.main","name": "Data Source","route": "/datasources","icon": "mdi-database"}],"metadata": {"author": "OHDSI","description": "Data source description and contextual data-source pages"}}],"settings": {"enableHotReload": false,"loadTimeout": 30000,"showLoadingIndicators": true,"theme": {"enableDarkMode": false,"primaryColor": "#000080","logoUrl": "/atlas/config/d2e2.svg","logoNavigateTo": "/","accentColor": "#ff5e59","landingLogoUrl": "/atlas/config/landing-page-illustration.svg","chartColors": ["#000080","#ff5e59","#4e79a7","#76b7b2","#59a14f","#edc949","#af7aa1","#9c755f","#bab0ab","#e15759"],"treemapGradient": ["#c3cce8","#4a5fb0","#000080"]},"header": {"showNavBar": true,"showFeedbackButton": false,"showLanguageSelector": true,"showConfigButton": true,"showUserMenu": true}}} |
Comment on lines
+7
to
+10
| history: createMemoryHistory(), | ||
| routes: [ | ||
| { | ||
| path: '/datasources/:id', |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the data-source-ui single-spa micro-frontend as an Atlas3 plugin. Implements the Description page at /datasources/:id. Closes #3106.