{"id":20956576,"url":"https://github.com/bluebrain/nexus-web","last_synced_at":"2025-05-14T05:32:11.785Z","repository":{"id":37412557,"uuid":"129362196","full_name":"BlueBrain/nexus-web","owner":"BlueBrain","description":"Nexus Web is the interface of Blue Brain Nexus","archived":true,"fork":false,"pushed_at":"2025-02-26T12:50:40.000Z","size":94007,"stargazers_count":18,"open_issues_count":3,"forks_count":9,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-02-26T13:43:08.323Z","etag":null,"topics":["javascript","nexus","nodejs","react","redux","server-side-rendering","storybook","typescript"],"latest_commit_sha":null,"homepage":"https://bluebrainnexus.io","language":"TypeScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BlueBrain.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-13T07:00:05.000Z","updated_at":"2025-02-26T12:50:45.000Z","dependencies_parsed_at":"2024-09-16T11:13:13.497Z","dependency_job_id":"6ca7b89e-2a0b-4cf3-be4f-6a78b43faa43","html_url":"https://github.com/BlueBrain/nexus-web","commit_stats":null,"previous_names":[],"tags_count":110,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fnexus-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fnexus-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fnexus-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fnexus-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BlueBrain","download_url":"https://codeload.github.com/BlueBrain/nexus-web/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076977,"owners_count":22010630,"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":["javascript","nexus","nodejs","react","redux","server-side-rendering","storybook","typescript"],"created_at":"2024-11-19T01:26:58.538Z","updated_at":"2025-05-14T05:32:06.774Z","avatar_url":"https://github.com/BlueBrain.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"docs/Blue-Brain-Nexus-Fusion-Github-banner.jpg\"/\u003e\n\n# Nexus Fusion\n\n\u003e Note: expect this repo to be renamed to \u003chttps://github.com/BlueBrain/nexus-fusion\u003e to match the new application name and Nexus component branding scheme.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Build Status\" src=\"https://github.com/BlueBrain/nexus-web/workflows/Review/badge.svg\"\u003e\n  \u003ca href=\"https://codecov.io/gh/BlueBrain/nexus-web\"\u003e\n    \u003cimg src=\"https://codecov.io/gh/BlueBrain/nexus-web/branch/master/graph/badge.svg\" alt=\"Coverage Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://twitter.com/intent/follow?screen_name=bluebrainnexus\"\u003e\n    \u003cimg alt=\"Follow on Twitter\" src=\"https://img.shields.io/twitter/follow/bluebrainnexus.svg?style=social\u0026label=Follow\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003eNexus Fusion (previously Nexus Web) is the interface of Blue Brain Nexus, the open-source knowledge graph for data-driven science.\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://bluebrainnexus.io/docs/\"\u003eBlue Brain Nexus Docs\u003c/a\u003e |\n  \u003ca href=\"#Development\"\u003eDevelopment\u003c/a\u003e |\n  \u003ca href=\"#studios-feature\"\u003eStudios\u003c/a\u003e\n\u003c/p\u003e\n\n## Contributing\n\nLearn how we use git [in the wiki](https://github.com/BlueBrain/nexus-web/wiki/Git-Flow)\n\n## Development\n\nInstall dependencies:\n**Please note you need npm v6.9.0 or above or yarn.**\n**Currently, does not work with yarn 2.**\n\n```sh\nyarn\n```\n\nTo start the Nexus in development mode, run:\n\n```sh\nyarn start\n```\n\nLint code:\n\n```sh\nyarn lint\n```\n\nRun unit tests:\n\n```sh\nyarn test\n```\n\nRun end to end tests:\n\n1. Ensure you have the `cypress.env.json` file locally.\n2.\n\na. To run the tests in headed mode:\n\n```sh\nyarn cy:open\n```\n\nb. To run the tests in headless mode:\n\n```sh\nyarn cy:run\n```\n\n## Build for production\n\nCompile app in `dist/` folder.\n\n```sh\nyarn build\n```\n\nYou can run the app with:\n\n```sh\nnode dist/server.js\n```\n\n## Build a Docker image\n\n```sh\ndocker build . --tag=nexus-web\n```\n\n## ENV variables list\n\n- `BASE_PATH`: The base of the app: i.e. `/staging/web` if hosted on `https://bbp-nexus.epfl.ch/staging/web` (default is `/`)\n- `HOST_NAME`: name of host where application is available from: i.e. `https://bbp-nexus.epfl.ch` (default is protocol + host where server is running from)\n- `CLIENT_ID`: The application name used for _OpenID Connect_ authentication (default is `nexus-web`)\n- `API_ENDPOINT`: The URL pointing to Nexus API. Default is '/'\n- `SERVICE_ACCOUNTS_REALM`: The realm that is configured for service accounts that should be hidden for Login. Default is 'serviceaccounts'.\n- `GTM_CODE`: The Google Analytics Identifier. GA won't be present unless an ID is specified.\n- `SENTRY_DSN`: The sentry URL Nexus Fusion needs to report errors to. Default is undefined.\n- `STUDIO_VIEW`: The location of the aggregate elastic search view that contains all the projects: `orgLabel/projectLabel/viewId`\n- `LOGO_IMG`: Url for an image to be used as Fusion logo in the Header, for example, `https://drive.boogle.com/jnsjdnsjs`\n- `LOGO_LINK`: Url for the logo, for example, `https://www.epfl.ch`\n- `FORGE_LINK`: Url for the Forge Templates button, for example, `https://some-url.hi`\n- `DATA_MODELS`: The location of the data models to be used in Activity lists in Workflow: `orgLabel/projectLabel`\n\nThe following concern Plugins. [See how to manage plugin deployments](./docs/plugins.md)\n\n- `PLUGINS_MANIFEST_PATH`: Remote end point where plugins and manifest can be found. for example, `https://bbp-nexus.epfl.ch/plugins`\n\n## Deployment\n\nYou can find out how to deploy a build [in the wiki](https://github.com/BlueBrain/nexus-web/wiki/Deploying-Your-Nexus-Web-Instance)\n\n## Documentation\n\nThe documentation for Nexus Fusion can be found in the [product docs](https://bluebrainnexus.io/docs/fusion/index.html).\n\n\u003e Read more about the Fusion [Architecture](https://bluebrainnexus.io/docs/fusion/architecture.html).\n\n### Resource-level [Plugins](https://bluebrainnexus.io/docs/fusion/plugins.html)\n\nA core component of Studio is the ability for data curators to develop a domain-specific presentation layer for their resources in Nexus Fusion. This allows data consumers to visualize their datasets using graphs, charts, or 3D visualizations, and to present the relevant metadata to the user.\n\nPlugins are developed using Javascript and are loaded into the Nexus Fusion instance from the /plugins folder.\n\n### [Studios](https://bluebrainnexus.io/docs/fusion/studio.html) Subapp\n\nStudios space allows data curators to display their data using customisable, persistent queries. Using custom plugins developed with JavaScript, data curators can format the presentation of the query results any way they like.\n\n### [Admin](https://bluebrainnexus.io/docs/fusion/admin.html) Subapp\n\nThe Nexus Fusion admin app allows you to manage your Nexus Delta instance.\n\n\u003e Learn how to [Add Your Own App](https://bluebrainnexus.io/docs/fusion/add-your-own-app.html)\n\n## Getting involved\n\nIssue tracking is centralized into [the main Blue Brain Nexus repository](https://github.com/BlueBrain/nexus).\n\nThere are several channels provided to address different issues:\n\n- **Feature request**: If there is a feature you would like to see in this application, please first consult the [list of open feature requests](https://github.com/BlueBrain/nexus/issues?q=is%3Aopen+is%3Aissue+label%3Afeature+label%3Afrontend+label%3Anexus-web). In case there isn't already one, please [open a feature request](https://github.com/BlueBrain/nexus/issues/new?labels=feature,frontend,nexus-web) describing your feature with as much detail as possible.\n- **Bug report**: If you have found a bug, please create an issue [here](https://github.com/BlueBrain/nexus/issues/new?labels=bug,frontend,nexus-web).\n\n## Development Tips\n\n### When using the nexus sdk\n\n- Never use `@id` as an absolute nexus address.\n- avoid using `nexus.httpGet()`, instead, use the specific API methods available\n\n### When building URLs inside the App\n\n- Don't add the basePath in a URL, it will be added automatically by react-router.\n\n## Funding \u0026 Acknowledgment\n\nThe development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.\n\nCopyright © 2015-2023 Blue Brain Project/EPFL\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fnexus-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbluebrain%2Fnexus-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fnexus-web/lists"}