{"id":28395118,"url":"https://github.com/databiosphere/jade-data-repo-ui","last_synced_at":"2025-07-31T23:33:48.555Z","repository":{"id":37493247,"uuid":"167390917","full_name":"DataBiosphere/jade-data-repo-ui","owner":"DataBiosphere","description":"UI for the Jade Data Repo","archived":false,"fork":false,"pushed_at":"2025-06-24T19:14:19.000Z","size":30355,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":25,"default_branch":"develop","last_synced_at":"2025-06-24T20:26:39.994Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DataBiosphere.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-01-24T15:33:40.000Z","updated_at":"2025-06-24T19:14:22.000Z","dependencies_parsed_at":"2023-10-25T16:38:43.518Z","dependency_job_id":"693ece54-3c11-489f-9744-3e5a8cb138b0","html_url":"https://github.com/DataBiosphere/jade-data-repo-ui","commit_stats":null,"previous_names":[],"tags_count":620,"template":false,"template_full_name":null,"purl":"pkg:github/DataBiosphere/jade-data-repo-ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataBiosphere%2Fjade-data-repo-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataBiosphere%2Fjade-data-repo-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataBiosphere%2Fjade-data-repo-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataBiosphere%2Fjade-data-repo-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DataBiosphere","download_url":"https://codeload.github.com/DataBiosphere/jade-data-repo-ui/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataBiosphere%2Fjade-data-repo-ui/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262172556,"owners_count":23270043,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-05-31T19:39:09.365Z","updated_at":"2025-07-31T23:33:48.542Z","avatar_url":"https://github.com/DataBiosphere.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jade Data Repository UI\n\nBased off of [React Redux Saga Boilerplate](https://github.com/gilbarbara/react-redux-saga-boilerplate)\n\n### Prerequisites\n\n- install npm: `brew install npm`\n- install nvm from [nvm.sh](https://github.com/nvm-sh/nvm#install--update-script):\n\n```\ncurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash\n```\n\nNote: Do NOT install nvm through homebrew as that is no longer maintained\n\n- Run the following to get automatic node version switching set up (see [.node-version](.node-version) for latest version to use):\n\n```\nnvm install 20.11.0\nrm -R ~/.avn (if you want to reset an existing or failed avn setup)\nnvm exec 20.11.0 npm install -g avn avn-nvm avn-n\nnvm exec 20.11.0 avn setup\nnvm install lts/gallium --default\nnvm use lts/gallium\n```\n\n- Run `npm install` to download dependencies defined in the package.json file and generate the node_modules folder with the installed modules.\n\n```\nnpm install\n```\n\n- Make sure you have the following environment variables set:\n\n  - `export PROXY_URL=https://jade.datarepo-dev.broadinstitute.org`\n  - `export CYPRESS_BASE_URL=http://localhost:3000`\n\n- For performance gains, you should disable linting (don't worry, it gets checked in GitHub actions) by setting the following environment variable:\n\n  - `export DISABLE_ESLINT_PLUGIN=true`\n\n- Before running e2e tests, set CYPRESS_GOOGLE_TOKEN to your access token\n\n```\nexport CYPRESS_GOOGLE_TOKEN=$(gcloud auth print-access-token \u003cany user in the group 'DataRepoTestResourceAccess'\u003e)\n```\n\nyou may need to log in with the test account using:\n\n```\ngcloud auth login --no-activate\n```\n\nyou may also need to ensure that the test resources are created in dev. See the setupResourceScripts readme in https://github.com/DataBiosphere/jade-data-repo\n\n### Provides\n\n- react ^17.x\n- react-router ^6.x\n- react-helmet ^6.x\n- redux ^4.x\n- redux-saga ^1.x\n\n### Development\n\n- vite-dev-server ^5.x\n- redux-devtools (with browser plugin)\n\n`npm start`\n\n### Building\n\n- vite ^4.x\n- babel ^7.x\n\n`npm run build`\n\n### Code Quality\n\n- eslint ^8.x\n\n`npm run lint` / `npm run lint:styles`\n\n### Testing\n\n- cypress 13.x\n\nTo run end-to-end tests: `npx cypress run` or `npx cypress open` (interactive mode)\n\nTo run unit tests: `npx cypress run --component` or `npx cypress open --component` (interactive mode)\n\nTo see console output from cypress test runs using the electron browser, set `ELECTRON_ENABLE_LOGGING=1`\n```shell\nELECTRON_ENABLE_LOGGING=1 npx cypress open\n```\n\n## skaffold\n\nTo render your own local skaffold.yaml run the following with your initials\n\n```\nsed -e 's/TEMP/\u003cinitials\u003e/g' skaffold.yaml.template \u003e skaffold.yaml\n```\n\nTo deploy UI work to your personal environment, run the following commands\n\n```\nnpm run build --production\nskaffold run\n```\n\nTo deploy the UI used in the Github e2e action, find the image tag in the output of the job and then substitute it for the \u003cTAG\u003e in the command below:\n\n```\nskaffold deploy --images=gcr.io/broad-jade-dev/jade-data-repo-ui:\u003cTAG\u003e\n```\n\nfor example, if the e2e \"Echo tagged image\" in your action log output was:\nPushed docker image gcr.io/broad-jade-dev/jade-data-repo-ui:abcdefg\n\nYou would run:\n\n```\nskaffold deploy --images=gcr.io/broad-jade-dev/jade-data-repo-ui:abcdefg\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabiosphere%2Fjade-data-repo-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatabiosphere%2Fjade-data-repo-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabiosphere%2Fjade-data-repo-ui/lists"}