Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge development into master #229

Merged
merged 110 commits into from
Jun 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
44d87cd
#8 add settings ui
Salam-Dalloul Jan 8, 2024
3cbe534
#sdsv-7 Expand Metadata for Dataset Panel
jrmartin Jan 10, 2024
e475812
Fix typo
jrmartin Jan 10, 2024
92f7d29
Merge branch 'development' into sdsv-7
jrmartin Jan 10, 2024
7bc54fd
Merge fixes
jrmartin Jan 10, 2024
81d54bb
Metadata panel details header
jrmartin Jan 10, 2024
ea783bc
#sdsv-7 move url check method to utils
jrmartin Jan 11, 2024
5ecdb43
Merge pull request #203 from MetaCell/sdsv-7
jrmartin Jan 11, 2024
93fa79c
#sdsv-8 Add flag to control settings panel visibility to redux store
jrmartin Jan 11, 2024
ffbe3ec
Merge branch 'development' into feature/SDSV-8
jrmartin Jan 11, 2024
541d877
Merge branch 'development' into feature/SDSV-8
jrmartin Jan 11, 2024
b13fdc4
#SDSV-8 Add settings to all other nodes that needed it
jrmartin Jan 11, 2024
bbc7ae0
Merge pull request #200 from MetaCell/feature/SDSV-8
jrmartin Jan 11, 2024
f0f7b53
#SDSV-21 Add metadata to redux store
jrmartin Jan 12, 2024
94b7993
#sdsv-21 Move metadata properties model to redux store
jrmartin Jan 15, 2024
d1c12d0
#20 update right sidebar style
Salam-Dalloul Jan 15, 2024
32829f1
#19 Replace icons with newly updated ones on Figma. Update Sidebar Ba…
Salam-Dalloul Jan 16, 2024
f04b869
Merge pull request #205 from MetaCell/feature/SDSV-20
jrmartin Jan 16, 2024
7bea93e
resolve conflict
Salam-Dalloul Jan 16, 2024
f1b1fa0
Merge pull request #206 from MetaCell/feature/SDSV-19
jrmartin Jan 16, 2024
6a3deba
Merge branch 'development' into feature/SDSV-21
jrmartin Jan 16, 2024
4c34bea
Fix breadcrumbs after merge
jrmartin Jan 16, 2024
869e544
Merge pull request #204 from MetaCell/feature/SDSV-21
jrmartin Jan 16, 2024
26b70c5
#22 connect settings panel with redux store
Salam-Dalloul Jan 18, 2024
e54330f
#22 connect settings panel with redux store
Salam-Dalloul Jan 18, 2024
8c4c377
#22 add reordering feature
Salam-Dalloul Jan 18, 2024
79f3a56
use descriptive actions/functions names
Salam-Dalloul Jan 18, 2024
a765626
remove unnecessary code
Salam-Dalloul Jan 18, 2024
592b0a5
Merge pull request #207 from MetaCell/feature/SDSV-22
jrmartin Jan 18, 2024
e94ebb5
#sdsv-9 Ensure all urls on Metadata panel are displayed as link
jrmartin Jan 29, 2024
af5f40b
#14 Clicking on graph node should scroll to section on metadata
Salam-Dalloul Jan 29, 2024
a1acd4f
Merge pull request #208 from MetaCell/feature/SDSV-14
jrmartin Jan 30, 2024
9bffcfd
#SDSV-5 Vertical Layout
jrmartin Jan 31, 2024
197cde5
Merge pull request #209 from MetaCell/feature/SDSV-9
jrmartin Jan 31, 2024
ba86663
Merge pull request #210 from MetaCell/feature/sdsv-5
jrmartin Jan 31, 2024
960e823
#16 apply different style to previously selected nodes
Salam-Dalloul Feb 14, 2024
9371c80
Merge pull request #211 from MetaCell/feature/SDSV-16
jrmartin Feb 16, 2024
ac67fea
#23 Clicking on Graph Node should scroll down sidebar on the left to …
Salam-Dalloul Feb 19, 2024
26e0f94
#sdsv-23 - Fix id extraction when retrieving tree_nodes
jrmartin Feb 21, 2024
7322db6
remove unnecessary code
Salam-Dalloul Feb 28, 2024
f454c25
Merge pull request #213 from MetaCell/feature/SDSV-10
jrmartin Feb 29, 2024
c83471c
#SDSV-24 - Add k8s files for kubernetes deployment using codefresh an…
jrmartin Mar 8, 2024
01521b9
#SDSV-5 Improve vertical layout code
jrmartin Mar 8, 2024
5331197
#SDSV-24 Remove cert-manager from ingress yaml
jrmartin Mar 8, 2024
a0e9e29
#SDSV-24 Revert cert-manager removal
jrmartin Mar 8, 2024
a887843
#SDSV-24 Use nginx class for ingress solver
jrmartin Mar 8, 2024
8c8ac32
#SDSV-18 - Adds links to SPARC portal folders, subjects and samples f…
jrmartin Mar 9, 2024
7aac4c1
#SDSV-18 - Work in progress showing metadata for folders and files no…
jrmartin Mar 12, 2024
d95816f
#SDSV-24 User tls-secret
jrmartin Mar 13, 2024
5819ab5
#SDSV-24 Update ingres yaml
jrmartin Mar 13, 2024
63016f6
#SDSV-24 Update name of ingress service
jrmartin Mar 13, 2024
2e97524
#SDSV-24 Add environment properties to deploy state on codefresh yaml
jrmartin Mar 13, 2024
c1ee10d
#SDSV-24 Update codefresh deployment
jrmartin Mar 13, 2024
5820a15
#SDSV-24 Fix typo
jrmartin Mar 13, 2024
22855eb
#SDSV-24 Revert previous change
jrmartin Mar 13, 2024
b711f06
#SDSV-24 Try again cf-deploy-kubernetes deployment
jrmartin Mar 13, 2024
e66e3cc
#sdsv-24 wrong image domain used
jrmartin Mar 13, 2024
9552622
#SDSV-24 Cleanup
jrmartin Mar 13, 2024
ef03b2f
#SDSV-24 Use codefresh_registry variable
jrmartin Mar 13, 2024
4a9c9cc
#26 Store Metadata Properties in Local Storage
Salam-Dalloul Mar 13, 2024
7fe1452
Merge pull request #215 from MetaCell/feature/SDSV-26
jrmartin Mar 14, 2024
f5684e6
Merge pull request #216 from MetaCell/feature/sdsv-5
jrmartin Mar 14, 2024
d724c91
Merge branch 'development' into feature/SDSV-18
jrmartin Mar 14, 2024
8beb6bc
Merge pull request #217 from MetaCell/feature/SDSV-18
jrmartin Mar 14, 2024
922b8d3
#SDSV-16 Bring branch up with development
jrmartin Mar 18, 2024
0068449
Merge pull request #214 from MetaCell/feature/SDSV-24
jrmartin Mar 18, 2024
a4c5e24
Merge pull request #219 from MetaCell/feature/SDSV-16
jrmartin Mar 18, 2024
0a81847
#hot_fix - Make Title of dataset clickable
jrmartin Mar 19, 2024
0eca013
#17 Allow Files to be Link to Sparc Portal from Sidebar
Salam-Dalloul Mar 21, 2024
268acb3
#SDSV-17 Fixing errors with links
jrmartin Mar 21, 2024
a0d4fd6
Merge branch 'development' into feature/SDSV-17
jrmartin Mar 21, 2024
5853eda
#SDSV-17 - Show icon for all files/folders with published URI links
jrmartin Mar 21, 2024
0403aff
Merge pull request #220 from MetaCell/feature/SDSV-17
jrmartin Mar 26, 2024
8012b19
#SDSV-17 - Revert back change to show links to sparc portal from side…
jrmartin Apr 4, 2024
f597258
Merge pull request #221 from MetaCell/feature/SDSV-17
jrmartin Apr 4, 2024
dde6fcf
#hot-fix Switch labels for title and label
jrmartin Apr 4, 2024
0fb90ff
#SDSV-28 - Fix links on metadata panel
jrmartin Apr 12, 2024
d4de465
#SDSV-28 - Add back sparc link to files
jrmartin Apr 12, 2024
a160da6
#SDSV-29 - Fix datasets with samples. Fix links and hide links we don…
jrmartin Apr 25, 2024
1692b5e
#SDSV - 29 : Fix issues with collapsing nodes
jrmartin Apr 26, 2024
bbaaf55
Merge pull request #222 from MetaCell/feature/SDSV-28
jrmartin Apr 26, 2024
89cba92
Merge branch 'development' into feature/SDSV-29
jrmartin Apr 26, 2024
7fce44e
#SDSV-29 - cleanup
jrmartin Apr 26, 2024
a9f7500
Merge pull request #223 from MetaCell/feature/SDSV-29
jrmartin Apr 26, 2024
856ffa0
#SDSV-29 Fix dataset parsing for Samples
jrmartin Apr 29, 2024
56e4193
Merge pull request #225 from MetaCell/feature/SDSV-29
jrmartin Apr 29, 2024
ea37e67
#SDSV-29 - Add names of Folders to Metadata
jrmartin Apr 29, 2024
6cf9838
#SDSV-29 - Show label for Folders
jrmartin Apr 29, 2024
ac1b1f9
Merge pull request #226 from MetaCell/feature/SDSV-29
jrmartin Apr 29, 2024
aa2f139
#SDSV-30 - Collapse nodes only one level down.
jrmartin May 10, 2024
d2b6161
#SDSV-31 - Use local storage to store published datasets
jrmartin May 10, 2024
098b4ce
#SDSV-31 - Store dataset ids on local storage
jrmartin May 10, 2024
ee3937f
#SDSV-30 - Dataset search fix
jrmartin May 16, 2024
1aa8a12
#SDSV-29 - Fix issues with datasets showing Samples
jrmartin May 24, 2024
10b8d45
Updgrade layout positions using d3 cluster.
jrmartin May 28, 2024
fb063cc
#SDSV-30 - Fix dependency issues
jrmartin May 28, 2024
945b67e
#SDSV-30 - Fix collapse sub levels from tree
jrmartin May 28, 2024
8286768
Fix tree selection by assigning IDs in right place
jrmartin May 28, 2024
e12db84
Fixing tree issues
jrmartin May 28, 2024
0975aec
Check if node selected belong to same dataset as in Graph viewer
jrmartin May 28, 2024
73db68f
Cleanup and group selection check on multiple datasets
jrmartin May 28, 2024
424d8d0
Merge pull request #227 from MetaCell/feature/SDSV-30
jrmartin May 28, 2024
7d112ce
#SDSV-30 - Fix tree interaction
jrmartin Jun 6, 2024
30e4914
#SDSV-30 - Update README and fixes for graphviewer bugs
jrmartin Jun 7, 2024
871f61a
Merge pull request #228 from MetaCell/feature/SDSV-30
jrmartin Jun 7, 2024
b846680
#SDSV-31 - Add version to config file to keep track of storage
jrmartin Jun 7, 2024
d6643af
Merge pull request #230 from MetaCell/feature/SDSV-31
jrmartin Jun 7, 2024
ee3dfb0
#SDSV-31 - Cleanup, add tooltips
jrmartin Jun 7, 2024
8dcf3d2
Update README.md
jrmartin Jun 7, 2024
2c3ceb2
Merge pull request #231 from MetaCell/feature/SDSV-31
jrmartin Jun 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 23 additions & 11 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,27 @@
# node-sass 4.14.1 requires node version <= 14 for Alpine Linux
# See: https://github.com/sass/node-sass/releases/tag/v4.14.1
FROM node:16-alpine as build-deps
WORKDIR /usr/src/app
RUN pwd && ls
COPY yarn.lock ./
ARG NODE_PARENT=node:16-alpine

FROM ${NODE_PARENT} as frontend

ENV BUILDDIR=/app

RUN apk add git
RUN npm i -g @craco/craco

WORKDIR ${BUILDDIR}
COPY package.json ${BUILDDIR}
COPY yarn.lock ${BUILDDIR}
COPY nginx/default.conf ${BUILDDIR}

RUN yarn install
COPY . ./
COPY . ${BUILDDIR}
RUN yarn build

COPY public/ ./public/
COPY src/ ./src/
FROM nginx:1.19.3-alpine

RUN cat /etc/nginx/conf.d/default.conf

COPY --from=frontend /app/default.conf /etc/nginx/conf.d/default.conf

COPY --from=frontend /app/build /usr/share/nginx/html/

EXPOSE 3000
CMD yarn run start
EXPOSE 80
30 changes: 20 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ Deployed version : https://metacell.github.io/sds-viewer/

The SDS Viewer can now be launched directly from datasets and models on the SPARC Portal (https://sparc.science/). From the landing page for your dataset or model of interest, simply click the SDS Viewer button, it will launch the viewer with it already loaded. In addition, users can load SPARC datasets using two other methods:

1) Loading a SPARC Dataset from list:
1) Loading a SPARC Dataset from app:
- Click on 'SPARC Datasets' button, it's located on the lower left corner.
- On the window that opens up, select the dataset you want to load.
- On the window that opens up, select the dataset you want to load. You can search
by dataset title and id.
![image](https://user-images.githubusercontent.com/4562825/166984322-83b4a8c2-aa29-4e6d-96e9-bcf4d125a3a9.png)
- After selection, click 'Done'
- Dataset will be loaded.
Expand All @@ -21,27 +22,36 @@ The SDS Viewer can now be launched directly from datasets and models on the SPAR
This will open up the SDS Viewer with the dataset already loaded.

##### Loaded dataset example #####
![Screenshot 2023-09-21 at 3 50 49 PM](https://github.com/MetaCell/sds-viewer/assets/4562825/e7247cf1-df5e-498d-a418-4cbc7f4c4de2)
![image](https://github.com/MetaCell/sds-viewer/assets/4562825/9ea43afd-28cc-4b37-8c72-96be2f821f1a)

##### SPARC Dataset used #####
![Screenshot 2023-09-21 at 3 53 33 PM](https://github.com/MetaCell/sds-viewer/assets/4562825/f3e287ed-f93a-436b-b3b0-b85cb1c0857c)
![image](https://github.com/MetaCell/sds-viewer/assets/4562825/16d878e2-d5bb-4dbd-9695-dfbd7ae5207f)


### Navigating the SDS Viewer
- Users can search for subjects, folders and files on the sidebar. Selecting an item on the sidebar will display the Metadata for it and zoom the Graph to its corresponding node.
![Screenshot 2023-09-21 at 4 04 23 PM](https://github.com/MetaCell/sds-viewer/assets/4562825/b64ea659-607f-42f7-b58f-edb01e31ab40)
- Users can search for subjects, folders and files on the sidebar. Selecting an item on the sidebar will display the Metadata for it and zoom the Graph to its corresponding folder or file.
![image](https://github.com/MetaCell/sds-viewer/assets/4562825/7b013f5a-eead-4996-b7d2-20b3bf35a294)


- Selecting an item on the Graph will display its Metadata.
- Selecting an item on the Graph will display its Metadata. Users can view Metadata for the Dataset's Subjects and Samples, along with its folders and files contents. Users can find links to the SPARC Portal for Subjects, Samples, Folders and Files.

![image](https://user-images.githubusercontent.com/4562825/186723085-c6573146-82dc-4fb7-ae95-588f7b1e4842.png)

- Navigating the Graph Viewer can be done with the mouse. There's also controlers on the bottom right that allows the user to change the Layout view, zoom in/out, reset the view to its original state and expand all data in the viewer.

- Navigating the Graph Viewer can be done with the mouse. There are also controllers on the bottom right that allow user to change the Graph Layout view, zoom in/out of the graph, reset the Layout to its original state and expand/collapse all data in the viewer.

![controllers](https://github.com/MetaCell/sds-viewer/assets/99416933/30aa8bb3-ec61-46d8-9f83-55ade15b95c0)

- Multiple Datasets can be loaded at the same time, which will open a new Graph Viewer Component for each dataset.

![multiple](https://github.com/MetaCell/sds-viewer/assets/99416933/a74fa033-ccd4-4609-b50f-852ce44d347a)
- Use the Metadata Settings button to control which properties to view on the Metadata panel. Toggle on and off properties on each Object type and click Save.

![image](https://github.com/MetaCell/sds-viewer/assets/4562825/6385b5a1-3598-4815-8aa1-f1223debe063)
![image](https://github.com/MetaCell/sds-viewer/assets/4562825/d5876581-2dfd-4f13-9213-d46907e443c8)


- Multiple Datasets can be loaded at the same time, a new Graph Viewer Component will be opened for each dataset.

![Multiple](https://github.com/MetaCell/sds-viewer/assets/4562825/9abe621a-a406-4e6b-8d6a-165622014425)


### Datasets Used
Expand Down
34 changes: 34 additions & 0 deletions deploy/k8s/codefresh.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
version: "1.0"
stages:
- "clone"
- "build"
- "deploy"
steps:
clone:
stage: "clone"
title: "Cloning SDS Viewer"
type: "git-clone"
repo: "metacell/sds-viewer"
revision: "${{CF_BRANCH}}"
build:
stage: "build"
title: "Building SDS Viewer"
type: "build"
image_name: "sds-viewer"
tag: "${{CF_SHORT_REVISION}}"
dockerfile: Dockerfile
working_directory: ./sds-viewer
buildkit: true
registry: "${{CODEFRESH_REGISTRY}}"
deploy:
stage: "deploy"
title: "Deploying SDS Viewer"
image: codefresh/cf-deploy-kubernetes
tag: latest
working_directory: ./sds-viewer/deploy/k8s
commands:
- /cf-deploy-kubernetes sds_viewer.yaml
- /cf-deploy-kubernetes ingress.yaml
environment:
- KUBECONTEXT=${{CLUSTER_NAME}}
- KUBERNETES_NAMESPACE=${{NAMESPACE}}
19 changes: 8 additions & 11 deletions deploy/k8s/ingress_tpl.yaml → deploy/k8s/ingress.yaml
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,42 +1,39 @@
apiVersion: cert-manager.io/v1alpha2
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
name: 'letsencrypt-sds_viewer'
name: 'letsencrypt-sds-viewer'
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: [email protected]
privateKeySecretRef:
name: letsencrypt-sds_viewer
name: letsencrypt-sds-viewer
solvers:
- http01:
ingress:
ingressName: sds_viewer
class: nginx
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/issuer: letsencrypt-sds_viewer
cert-manager.io/issuer: letsencrypt-sds-viewer
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: 'true'
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/proxy-body-size: 512m
nginx.ingress.kubernetes.io/from-to-www-redirect: 'true'
name: sds_viewer
name: sds-viewer-nginx-ingress
spec:
rules:
- host: "{{DOMAIN}}"
http:
paths:
- backend:
service:
name: sds_viewer
name: sds-viewer
port:
number: 80
path: /
pathType: ImplementationSpecific
tls:
- hosts:
- "{{DOMAIN}}"
secretName: sds_viewer-tls
secretName: sds-viewer-tls
57 changes: 57 additions & 0 deletions deploy/k8s/sds_viewer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: sds-viewer
spec:
selector:
matchLabels:
app: sds-viewer
replicas: 1
template:
metadata:
labels:
app: sds-viewer
spec:
containers:
- name: sds-viewer
image: "gcr.io/metacellllc/sds-viewer:{{CF_SHORT_REVISION}}"
imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 80
livenessProbe:
failureThreshold: 3
httpGet:
path: /index.html
port: 80
scheme: HTTP
initialDelaySeconds: 45
periodSeconds: 30
timeoutSeconds: 2
readinessProbe:
failureThreshold: 3
httpGet:
path: /index.html
port: 80
scheme: HTTP
initialDelaySeconds: 15
periodSeconds: 30
timeoutSeconds: 2
resources:
limits:
cpu: 1500m
memory: 768Mi
requests:
cpu: 500m
memory: 768Mi
---
apiVersion: v1
kind: Service
metadata:
name: sds-viewer
spec:
type: ClusterIP
ports:
- port: 80
targetPort: 80
selector:
app: sds-viewer
39 changes: 0 additions & 39 deletions deploy/k8s/sds_viewer_tpl.yaml

This file was deleted.

32 changes: 32 additions & 0 deletions nginx/default.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
upstream sds-viewer {
server sds-viewer:8000;
}

server {
listen 80;

location / {
root /usr/share/nginx/html/;
# index index.html index.htm;
try_files $uri /index.html;
}

location /sds-viewer/ {
root /usr/share/nginx/html/;
# index index.html index.htm;
try_files $uri /index.html;
}

location ~* ^/(admin|api|logged-out|login|sds-viewer|complete|disconnect|__debug__)/.*$ {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
proxy_pass http://sds-viewer;
}

location /static/ {
autoindex on;
alias /usr/share/nginx/html/static/;
}
}
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"version": "0.1.0",
"license": "MIT",
"private": true,
"homepage": "http://metacell.github.io/sds-viewer",
"homepage": "./",
"dependencies": {
"@craco/craco": "^6.1.2",
"@frogcat/ttl2jsonld": "^0.0.7",
Expand Down Expand Up @@ -31,6 +31,7 @@
"n3": "^1.13.0",
"puppeteer": "13.5.1",
"react": "^17.0.2",
"react-beautiful-dnd": "^13.1.1",
"react-dom": "^17.0.2",
"react-hot-loader": "^4.13.0",
"react-redux": "^7.2.4",
Expand Down
Loading
Loading